#include"stdio.h"
main()
{int i,c,n=1,sum=1;
for(i=1;i<=100;i++)
{for(n=2;n<=i-1;n++)
{ if(i%n==0) c=i-n;
else break;
}
if(c==0) printf("%d\n",sum);
}
}
这个程序为什么不对
请对比修改的地方:
#include"stdio.h"
main()
{int i,c,n=1,sum=0;
for(i=1;i<=100;i++)
{c=i;
for(n=1;n<=i/2;n++)
if(i%n==0) c=c-n;
if(c==0)
{printf("%d\n",i);
sum++;}
}
printf("100以内有%d个完数\n",sum);
}