在线编译器 C

#include <stdio.h> int main() { int n; int b=0; scanf("%d",&n); int A=n; int sum; int a=n%10; while(A>0){ A=A/10; sum++; } int temp; for(int i=0;i<sum;i++){ temp=a%10; if(i==sum-1){ b=temp; } a=a/10; } printf("%d",a*b); return 0; }
1) 这段代码试图计算一个整数的首尾数字乘积,但存在逻辑错误和未初始化变量的问题。

2) 提示:
- 变量 `sum` 在自增前没有初始化为0
- 对变量 `a` 的处理逻辑有误,它只保存了最后一位数字,却试图通过除法获取其他位