Online Compiler C

#include <stdio.h> int main() { int x, sum; scanf("%d", &x); while(x>=1){ sum = sum + x%10; x = x/10; } printf("%d\n", sum); return 0; }
这段代码的功能是计算一个整数各位数字之和。它通过循环不断取出最后一位数字并累加,然后去掉最后一位,直到数字变为0。

- 变量 sum 没有初始化,它的初始值是不确定的,这会导致累加结果错误。在使用 sum 之前,应该给它一个明确的初始值。
- 循环条件 x>=1 在 x 为负数时不会执行,但如果是负数,你希望如何处理?另外,当 x 为0时循环也不会执行,但0的各位和应该是0。