c语言中判断完数 一个数如果恰好等于它的因子之和,这个数就称为完数。例如,6的因子为1,2,3,且6=1+2+3,

如题所述

第1个回答  2012-03-06
#include "stdio.h"
#include "conio.h"
main()
{
static int k[10];
int i,j,n,s;
for(j=2;j<1000;j++)
{
n=-1;
s=j;
for(i=1;i<j;i++)
{
if((j%i)==0)
{
n++;
s=s-i;
k[n]=i;
}
}
if(s==0)
{
printf("%d is a wanshu",j);
for(i=0;i<n;i++)
printf("%d,",k);
printf("%d\n",k[n]);
}
}
getch();
}本回答被提问者采纳
第2个回答  2012-03-06
判断N是否为完数:
1)循环1到n/2(奇数取整)被n整除;数为零则,将该循环子计入数组a[n/2]
2 ) 取出数组所有元素,求和b
3 ) 判断n与b是否等值
4 )返回判断结果
相似回答