10292

来源:互联网 发布:erp软件实施工程师 编辑:程序博客网 时间:2024/06/03 16:59

//1. 一个数如果恰好等于它的因子之和,这个数被成为”完数”,例如:6=1+2+3.请编程找出1000以内的完数

#include <stdio.h>

int main ()
{
int i,j,sum;
for(i=2;i<1000;i++)
{
sum=0;
for(j=1;j<i;j++)//判断因子时不能包含自身
{
if(i%j==0)
{
sum=sum+j;
}
}
if(sum==i)//在所有因子累加后再判断是否与自身相等
{
printf("%d its factors are ",i);
for(j=1;j<i;j++)
{
if(i%j==0)
{
if(j == 1) printf("%d", j);
else printf(",%d", j);
}
}
printf("\n");
}
}
return 0;
}
0 0