用C语言统计100以内的所有完数并输出
时间: 2023-05-15 12:04:53 浏览: 324
以下是用C语言统计100以内的所有完数并输出的代码:
#include <stdio.h>
int main() {
int i, j, sum;
printf("100以内的完数有:\n");
for (i = 1; i <= 100; 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;
}
输出结果为:
100以内的完数有:
6 28
相关问题
用C语言统计1000以内的所有完数并输出
以下是用C语言统计1000以内的所有完数并输出的代码:
#include <stdio.h>
int main() {
int i, j, sum;
for (i = 1; i <= 1000; i++) {
sum = 0;
for (j = 1; j < i; j++) {
if (i % j == 0) {
sum += j;
}
}
if (sum == i) {
printf("%d ", i);
}
}
return 0;
}
这段代码会输出1000以内的所有完数,即6、28、496。
用c语言统计1000以内完数的个数以及它们的和。
完数,即它所有的因子(不包括自己)之和等于它本身的数。
以下是使用C语言编写的统计1000以内完数的个数以及它们的和的程序:
```c
#include <stdio.h>
int main() {
int i, j, sum, count = 0;
for(i = 2; i <= 1000; i++) {
sum = 0;
for(j = 1; j <= i / 2; j++) {
if(i % j == 0) {
sum += j;
}
}
if(sum == i) {
count++;
printf("%d ", i);
}
}
printf("\nThere are %d perfect numbers under 1000.\n", count);
return 0;
}
```
程序中使用了两个循环,外层循环从2到1000遍历所有数字,内层循环计算当前数字的因子之和。如果因子之和等于该数字本身,则该数字为完数,输出并将完数个数加1。
运行程序,输出结果为:
```
6 28 496
There are 3 perfect numbers under 1000.
```
可以看到,在1000以内有三个完数:6、28和496。完数的总和为530。
阅读全文