#include<stdio.h>
#include<math.h>
#include<string.h>
int comnumber(int s)
{
int k=2;
int sum=1;
for(;k<=s-1;k++)//注意质数和因子的区别
{
if(s%k==0)
sum+=k;
}
if(sum==s)
return 1;
else
return 0;
}
int main()
{
int i;
printf("2-1000内的完数有:");
for(i=2;i<=1000;i++)
{
if(comnumber(i)==1)
printf(" %d",i);
}
return 0;
}
#include<math.h>
#include<string.h>
int comnumber(int s)
{
int k=2;
int sum=1;
for(;k<=s-1;k++)//注意质数和因子的区别
{
if(s%k==0)
sum+=k;
}
if(sum==s)
return 1;
else
return 0;
}
int main()
{
int i;
printf("2-1000内的完数有:");
for(i=2;i<=1000;i++)
{
if(comnumber(i)==1)
printf(" %d",i);
}
return 0;
}