求1-1000内的完数
问题:输入一个正整数 repeat (0<repeat<10),做repeat 次下列运算:
输入 2 个正整数m 和n(1<=m,n<=1000),输出m 到n 之间的所有完数(完数就是因子和与它本身相等的数)。
代码:
#include<stdio.h>
#include<stdlib.h>
int function(int m,int n){
int sum;
if(m==1)printf("%d",m);
for(int i=m;i<=n;i++){
for(int j=1;j<i;j++){
if(i%j==0)sum=sum+j;
}
if(sum==i)printf(" %d",sum);
sum=0;
}
return 0;
}
int main(void){
int repeat,m,n;
scanf("%d",&repeat);
while(repeat--){
scanf("%d%d",&m,&n);
if(m<1||n>1000)exit(0);
function(m,n);
}
}
帮我看看哪里出问题了吧。我提交上去Wrong number,修改的我眼睛都要瞎了。。。。