在线编译器 C

#include <stdio.h> int main() { int N; scanf("%d", &N); while (N>=0) { printf("%d ",N%10); N/=10; } return 0; }
这段代码的作用是:从用户输入一个整数N,然后不断输出N的个位数字,每次输出后去掉个位,直到N变成负数为止。

- 你的循环条件是 `N>=0`,但当你不断除以10时,N最终会变成0,然后循环继续输出0,再除以10变成0,导致无限循环。你需要考虑当N为0时应该如何处理。
- 另外,如果输入的是负数,循环条件一开始就不满足,不会输出任何内容。你可能需要先处理负号的情况,或者调整循环逻辑。