c语言新手求指错(很短的一段代码)
我的目的是要把1-1000内的所有完数输出,比如说6是完数6的因子为1,2,3。。且6=1+2+3.就是说一个数所有因子之和为那个数,那么那个数就是完数。
#include <stdio.h>
void main()
{int n,i,s;
i=1;
s=0;
n=1;
for(;n>=1&&n<=1000;n++)
{
for(;i<n;i++)
{if((n%i)==0)
{s=s+i;}
}
if(s==n)
{printf("%d\t",n);}}
printf("\n");
}