C语言使用for循环找出100以内的所有完数及这些完数的和。
时间: 2023-10-30 13:08:50 浏览: 221
好的,这是一个关于C语言编程的问题。可以使用for循环遍历1-100之间的所有整数,并判断每个整数是否为完数。如果是完数,则将其保存到一个数组中,并计算其和。以下是示例代码:
```c
#include <stdio.h>
int main() {
int num, i, j, sum = 0;
int arr[100], index = 0;
for (num = 2; num <= 100; num++) {
int temp = num;
int factorSum = 1;
for (j = 2; j <= temp / 2; j++) {
if (temp % j == 0) {
factorSum += j;
}
}
if (factorSum == num) {
arr[index++] = num;
sum += num;
}
}
printf("所有完数:");
for (i = 0; i < index; i++) {
printf("%d ", arr[i]);
}
printf("\n");
printf("所有完数的和:%d", sum);
return 0;
}
```
运行结果:
```
所有完数:6 28
所有完数的和:34
```
阅读全文