[求助]求1000以内完数时遇到的问题~
main()
{
int n,a,b,s=0;
for(n=6;n<=1000;n++)
{
for(a=2;a<=n;a++)
if((n%a)==0)/*判断是否是因子*/
{b=n/a;s+=b;}
if(s==n)
printf("Result:%d\n",n);
s=0;/*将s归零*/
}
}
这个代码是 S有什么意义?? 如果n%a==0的话 那a是n的一个因子 那b=n/a b也不是n的一个因子吗? s=s+b 中的s怎么会等于n呢~~
前面错了 是完数 呵呵~~
[此贴子已经被作者于2007-10-25 21:46:46编辑过]