完数的概念: 一个数等于它自己的公因子之和,这个数就是完数 公因子:能被整除的数都是公因子 比如:6的公因子是1,2,3(6本身不算) 6=1+2+3; //所以6就是完数
代码:
#include<stdio.h>
int main()
{
int i, flag, sum = 0, j = 0;
for (i = 1; i <= 10000; i++)
{
flag = i; //记录i值防止后续操作打乱i值
for (j = 1; j < i; j++) //此循环找出完数的所有因子 (j<i 因子的值都<完数本身)
{
if (flag % j == 0) //找到了因子
{
sum += j; //利用第三个变量把找出的因子相加
}
}
if (flag == sum)
{
printf("%d ", flag);
}
sum = 0; //sum用来计算因子的和,因此每次找完一个数都要置回0
}
return 0;
}