题目:一个数如果恰好等于它的因子之和,这个数就称为“完数”。 例如6=1+2+3。编程找出1000以内的所有完数。
#include <stdio.h>
void main() {
int x; //从2到1000的自然数
int i;
int sum = 0;
for (x = 2; x < 1000; x++) {
for (i = 1; i < x; i++) {
if (x % i == 0) //找出x的因子,是因子就累加
{
sum += i;
}
}
if (x == sum) //因数和与这个自然数x是否相等,是则输出
{
printf("%d\n", x);
}
sum = 0; //将因数和复原到0,以便下次使用
}
}
本章C语言经典例题合集:http://t.csdnimg.cn/FK0Qg
712





