c语言输入一个正整数,然后检验这个数是否为奇偶平衡数,检验的办法是:将这个数的各个位分解出来,如果分解出来的所有位的数字按照奇数和偶数划分成两组之后,两组中数字的个数一样的话,那么原始的数就被称为奇偶平衡数,否则就不是。当输入相同的数是也要行
时间: 2023-12-03 14:03:34 浏览: 109
好的,下面是一个用C语言编写的判断奇偶平衡数的程序,可以满足您的需求:
```c
#include <stdio.h>
int main() {
int num, oddCnt = 0, evenCnt = 0, oddSum = 0, evenSum = 0, digit, i;
printf("请输入一个正整数:\n");
scanf("%d", &num);
// 分离各位数字并计算奇数和偶数的个数与和
while (num > 0) {
digit = num % 10;
if (digit % 2 == 0) {
evenCnt++;
evenSum += digit;
} else {
oddCnt++;
oddSum += digit;
}
num /= 10;
}
// 判断是否为奇偶平衡数
if (oddCnt == evenCnt && oddSum == evenSum) {
printf("输入的数字是奇偶平衡数。\n");
} else {
printf("输入的数字不是奇偶平衡数。\n");
}
return 0;
}
```
这个程序会先让用户输入一个正整数,然后将该数的各个位分离出来,统计奇数和偶数的个数与和,最后判断是否为奇偶平衡数并输出结果。如果输入相同的数,程序也能正确判断。
阅读全文