C语言计算1000以内的完全数

如果一个数等于它所有非自身的约数的和,即为完全数,例如6所有非自身约数为1,2,3,而6=1+2+3,所以6为完全数。求1000以内的所有完全数。
麻烦帮我看看这段代码哪里错了
#include <stdio.h>
#include <stdlib.h>
void main(void)
{
int i,j,m,s;
for (i=2;i<=1000;i++)
{
s=0;
for (j=1;j<i;j++)
{
m=i%j;
if (m=0)
s=s+j;
}
if(i=s)
printf ("完全数有%d",i);
}
system ("pause");
}

第1个回答  2012-12-25
if (m=0)错了
应该为if (m==0)追问

好了,谢谢

追答

把 if(i=s)
改成if(i==s)再试一下

本回答被提问者采纳
第2个回答  2012-12-25
if (m=0)
if(i=s)
==才是判断
第3个回答  2012-12-25
从语法上看 if(a==b)才对
相似回答