题目
一个数如果恰好等于它的因子之和,这个数就称为完数。例如,6的因子是1,2,3,而6=1+2+3,因此6为完数。编程序找出1000之内所有的完数,并按下列格式输出其因子:6 its factors are 1,2,3
代码
#include<stdio.h>
int main( )
{
int i,m;
for(i=1;i<=1000;i++)
{
int n=0;
for(m=1;m<=i-1;m++)
{
if(i%m==0) n=n+m;
}
if(n==i)
{
printf("%d its factors are ",i);
int p;
for(p=1;p<=i-1;p++)
{
if(i%p==0) printf("%d ",p);
}
printf("\n");
}
}
return 0;
}
输出结果