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

#include <stdio.h> int main() { int n, sum = 0; scanf("%d", &n); while (n != 0) { sum += n % 10; n = n / 10; } if (sum==10) printf("YES"); else printf("NO") return 0; }
这段代码的功能是:读入一个整数,计算它各位数字之和,然后判断这个和是否等于10,并输出"YES"或"NO"。

- 代码中有一处语法错误:第12行的 `printf("NO")` 后面缺少了分号。C语言中每条语句必须以分号结束。
- 另外,如果输入的是负数,while循环的条件 `n != 0` 会导致循环不执行,直接输出"NO",这可能不是期望的行为。可以考虑如何处理负数的情况。