在线编译器 C

#include <stdio.h> int main() { int a; scanf("%d", &a); int digit1, digit2, d; digit1 = a - a / 10; while(a>10){ digit2 = a % 10; a /= 10; } d = digit1*digit2; printf("%d", d); return 0; }
1) 这段代码试图计算一个整数的首位数字和末位数字的乘积,但存在逻辑错误,无法正确获取首位数字。

2) 提示1:检查变量`digit1`的计算方式,它应该获取的是数字的首位而不是末位。
   提示2:注意循环结束后变量`a`的值变化,此时它可以用来表示数字的首位。