麻烦帮我看看这道题是怎么回事,谢谢!
老谭的那本书(第四版),课本中第141页的第九题,寻找完美数的那道编程题,我自己写的代码如下:#include <stdio.h>
int main()
{
int n,i,sum=0;
for(n=2;n<=1000;n++)
{
for(i=1;i<=n/2;i++)
{ if(n%i==0)
sum+=i; }
if(sum==n)
printf("The perfect number is %d\n",n);
}
return 0;
}
在VC6中编译和组建均能通过,但是运行没有结果,我看了一下答案,区别就在于sum初始没有赋值,而是在第一个for循环中将其赋值为0,我不知道这个和初始赋值有什么差别,想了半天也没有明白,因为是菜鸟,所以向大家请教一下这个是怎么回事。