在线编译器 C

#include <stdio.h> int main() { int n, a, o = 0, j = 0; scanf("%d", &n); // n = 1235; while (n != 0) { a = n % 10; if (a % 2==0) o++; else j++; n = n / 10; } printf("%d %d", o, j); return 0; }
这段代码的功能是统计一个整数中奇数和偶数的个数。程序从用户输入读取一个整数,然后通过循环逐位取出每一位数字,判断它是奇数还是偶数,最后输出偶数的个数和奇数的个数。

- 代码中变量 `o` 用来统计偶数个数,`j` 用来统计奇数个数,但变量名不够直观,容易混淆。
- 注意:当输入的数字为0时,循环条件 `n != 0` 会直接不执行,导致输出 `0 0`,但0本身是一个偶数,这里需要特殊处理输入为0的情况。