Онлайн компилятор C

#include <stdio.h> int main() { int n, a, b; scanf("%d", &n); while (n != 0) { a = n % 10; b = b * 10 + a; n = n / 10; } printf("%d", b); return 0; }
这段代码试图将一个整数反转后输出,但存在一个关键问题:变量 `b` 没有初始化,导致结果不可预测。

- 变量 `b` 在使用前必须赋初值,否则它的初始值是不确定的,会影响计算结果。
- 另外,如果输入的数字以0结尾(例如120),反转后前导0会被忽略,但当前逻辑会正确输出21,这一点没有问题。