一个数如果恰好等于它的因子之和,这个数就称为“完数”。例如6=1+2+3.编程找出1000以内的所有完数。
各位帮忙了 我自己写了个 可是运行之后只有6是不是就只有六啊
#include<stdio.h>
void main()
{
int i,j,k,sum;
for(i=2;i<=1000;i++)
{
sum=0;
k=i;
for(j=2;j<=i;j++)
{
while(i!=j)
{
if(i%j==0)
{
sum+=j;
i=i/j;
}
else break;
}
}
if(sum+1+i==k)
printf("%d",k);
i=k;
}
}