C语言查找1000以内完数并输出因子
以下是使用C语言编写的程序,用于找出1000以内的所有完数并按照所要求的格式输出其因子:
#include <stdio.h>
int main() {
int num, sum, i, j;
printf("Perfect numbers within 1000 are: \n");
for (num = 1; num <= 1000; num++) {
sum = 0;
for (i = 1; i < num; i++) {
if (num % i == 0) {
sum += i;
}
}
if (sum == num) {
printf("%d its factors are ", num);
for (j = 1; j < num; j++) {
if (num % j == 0) {
printf("%d ", j);
}
}
printf("\n");
}
}
return 0;
}
运行这段代码,将会输出1000以内的所有完数及其因子。例如:
Perfect numbers within 1000 are:
6 its factors are 1 2 3
28 its factors are 1 2 4 7 14
496 its factors are 1 2 4 8 16 31 62 124 248
以上代码使用两个嵌套的循环来计算每个数字的因子和。外层循环遍历1到1000之间的每个数字,内层循环计算该数字的因子之和。如果因子之和等于该数字本身,则将该数字及其因子输出。
原文地址: http://www.cveoy.top/t/topic/dx4p 著作权归作者所有。请勿转载和采集!