c语言实现。一个数如果恰好等于它的因子之和就称为“万数”
时间: 2023-09-26 13:09:30 浏览: 80
基于C语言实现亲和数
好的,以下是用 C 语言实现判断一个数是否是“万数”的代码:
```c
#include <stdio.h>
int main() {
int num, i, sum = 0;
printf("请输入一个正整数:");
scanf("%d", &num);
for (i = 1; i <= num / 2; i++) {
if (num % i == 0) {
sum += i;
}
}
if (sum == num) {
printf("%d是万数。\n", num);
} else {
printf("%d不是万数。\n", num);
}
return 0;
}
```
这段代码通过 for 循环遍历 num 的所有因子并求和,然后判断这个和是否等于 num。如果相等,则输出“万数”,否则输出“不是万数”。
注意,这里的循环条件是 i <= num / 2,原因是一个数的因子最大只可能是它的一半(超过一半的因子已经被统计过了)。另外,为了判断一个数是否是正整数,用户需要在输入时保证输入的是正整数。
希望这个代码可以帮到你!
阅读全文