#include <stdio.h>int fun(int n) /*函数用来判断一个数是否是
完全数.是就返回1. 不是返回0*/
{
int i,sum = 0;
for(i=1;i<n;i++)
{
if(n % i == 0) //如果i是n的因子. 就将i累加到sum中.
sum = sum + i;
}
if(sum == n) //判断n和sum是否相等.如果相等就说明这个数是完全数.返回1.
return 1;
return 0; //否则返回0;
}int main()
{
int i,t;
/*输入一个整数,判断这个数是否是完全数*/
scanf("%d", &t);
if( fun( t ) )
printf( "Yes\n" );
else
printf( "No\n" );/*输出1000以内所有完全数*/
for(i = 1; i <= 1000; i++)
{
if( fun( i ) )
printf("%d\t",i);
}
printf("\n");
return 0;
}