一个数如果恰好等于它的因子之和,这个数就称为"完数"。找出n以内的完数,并输出。c语言
时间: 2023-10-23 10:26:55 浏览: 191
C语言程序设计-计算并输出给定整数n的所有因子之和(不包括1与自身);注意:n的值不大于1000.c
5星 · 资源好评率100%
以下是一个找出n以内完数的C语言程序:
```c
#include <stdio.h>
int main()
{
int n, i, j, sum;
printf("请输入一个正整数n:");
scanf("%d", &n);
printf("n以内的完数有:\n");
for (i = 1; i <= n; i++) {
sum = 0;
for (j = 1; j < i; j++) {
if (i % j == 0) {
sum += j;
}
}
if (sum == i) {
printf("%d ", i);
}
}
printf("\n");
return 0;
}
```
程序输入一个正整数n,然后从1到n逐个检查每个数是否是完数,如果是则输出该数。对于每个数i,程序检查所有小于i的数j,如果j是i的因子,则将j加入到sum中。最后程序判断sum是否等于i,如果相等则说明该数是完数。
阅读全文