输出1000之内的全部“完数”,要求每行输出2个,并统计完数的个数。一个数如果恰好等于它的真因子之和,就称为完数。
代码参考如下:
#include<stdio.h>
#include<string.h>
int main() {
int i,j;
int count=0;
for(i=1;i<=1000;i++)
{
int sum=0;
for(j=1;j<i;j++)
{
if(i%j==0)
sum += j;
}
if(sum==i)
{
printf("%d ",i);
count++;
if (count % 2 == 0)
printf("\n");
}
}
printf("\n完数个数=%d", count);
return 0;
}