C语言判断一个数是否是完数,如果是完数输出1,否则输出0
时间: 2024-01-01 10:04:04 浏览: 125
好的,以下是判断一个数是否是完数的C语言代码实现:
```c
#include <stdio.h>
// 判断一个数是否是完数
int isPerfectNumber(int num) {
int sum = 0;
for (int i = 1; i <= num/2; i++) {
if (num % i == 0) {
sum += i;
}
}
if (sum == num) {
return 1;
} else {
return 0;
}
}
// 主函数
int main() {
int num;
printf("请输入一个正整数:");
scanf("%d", &num);
if (num <= 0) {
printf("输入错误!请输入一个正整数。\n");
} else {
if (isPerfectNumber(num)) {
printf("%d是完数。\n", num);
} else {
printf("%d不是完数。\n", num);
}
}
return 0;
}
```
这个程序定义了`isPerfectNumber(int num)`函数,用于判断一个数是否是完数。主函数中首先让用户输入一个正整数,然后调用`isPerfectNumber(int num)`函数进行判断并输出结果。
阅读全文