c语言输入一个正整数n找出1-n间所有完数的代码怎么写
时间: 2024-04-30 19:17:31 浏览: 115
查找1到n的完数(c语言版)
4星 · 用户满意度95%
以下是C语言实现找出1-n间所有完数的代码:
```c
#include<stdio.h>
int main() {
int n, i, j, sum;
printf("请输入一个正整数:");
scanf("%d", &n); // 输入一个正整数n
printf("1~%d间的完数有:\n", n);
for(i = 2; i <= n; i++) { // 从2开始遍历到n
sum = 0;
for(j = 1; j < i; j++) { // 遍历i的所有因子
if(i % j == 0) {
sum += j; // 把i的因子累加到sum中
}
}
if(sum == i) { // 判断sum是否等于i
printf("%d ", i); // 如果相等则输出i
}
}
printf("\n");
return 0;
}
```
如果您对此有任何疑问,请随时与我交流。
阅读全文