如果一个正整数的所有因子之和等于该正整数,则称这个正整数为完全数。编写程序读入n,输出不超过n的全部完全数。如6=1+2+3 28=1+2+4+7+14。c语言
时间: 2023-12-30 10:03:03 浏览: 149
C语言程序设计-计算并输出给定整数n的所有因子之和(不包括1与自身);注意:n的值不大于1000.c
5星 · 资源好评率100%
#include <stdio.h>
int main() {
int n, i, j, sum;
printf("请输入一个正整数n:");
scanf("%d", &n);
printf("不超过%d的完全数有:\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);
for (j = 1; j < i; j++) {
if (i % j == 0) {
printf("%d ", j);
}
}
printf("\n");
}
}
return 0;
}
阅读全文