在线编译器 C

#include <stdio.h> int main() { int n; int cnt = 0; while (1) { scanf("%d", &n); if (n ==0) break; if(n%2==0) cnt++; } printf("%d", cnt); return 0; }
这段代码的功能是:不断读取用户输入的整数,直到输入0为止,并统计其中偶数的个数,最后输出这个个数。

- 你的代码在输入0时直接跳出循环,但0本身也是偶数,根据题目要求,0是否应该被计入偶数个数?检查一下循环结束的条件和计数逻辑的顺序。
- 注意:当输入0时,代码先判断n==0然后break,跳过了后面的偶数判断,所以0不会被计数。如果题目要求0不计入偶数,那你的逻辑是正确的;如果要求0也要计入,就需要调整判断顺序。