输出1000以内的所有完数
#include<stdio.h>
int main()
{
int a;
for(int i=1;i<=1000;i++)/*从1循环到1000*/
{
a=0;/*用来记录i的所有因子的和*/
/*从1循环到i-1,寻找i的因子,如果j是i的因子,a就自增j*/
for(int j=1;j<i;j++) if(i%j==0) a+=j;
if(a==i)/*如果i是完全数,则开始打印*/
{
printf("%d its factors are 1",i);
for(int m=2;m<i;m++) if(i%m==0) printf(",%d",m);/*用循环打印i在2到i-1的因子*/
printf("\n");
}
}
}
这样就可以输出1000以内的所有完数了。