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

#include <stdio.h> int digit_sum(unsigned int n) { int sum = 0; while (n > 0) { sum += n % 10; n /= 10; } return sum; } int main() { unsigned int sum; printf("%d", sum); return 0 }
这段代码定义了一个计算各位数字之和的函数 `digit_sum`,但在 `main` 函数中并没有调用它,而是直接打印了一个未初始化的变量 `sum`,并且 `return 0` 后面缺少了分号。

- 在 `main` 函数中,你声明了 `unsigned int sum` 但没有给它赋值,然后直接打印它。这样会输出一个不确定的值。你应该调用 `digit_sum` 函数,并将结果赋值给 `sum` 或直接打印函数返回值。
- 第14行 `return 0` 末尾缺少分号,会导致编译错误。记得每条语句结束后都要加分号。