发布网友 发布时间:2024-10-04 21:10
共4个回答
热心网友 时间:2024-11-07 17:35
#include<stdio.h>
int main()
{
int factorsum(int number);
int m,n,a;
//这两句去掉,没有意义
//m>=1;
//n<=1000;
scanf("%d,%d",&m,&n);
for (a=m;a<=n;a++)
{
if (a==factorsum(a))//判断是否相等应该是==if (a=factorsum(a))
printf("%d ",a);//输出元素间加个空格分开printf("%d",a);
}
}
int factorsum(int number)
{
int i=1,a=0;
for(i=1;i<number;i++)
{
if(number%i==0)
a=a+i;
}
return a;
}
热心网友 时间:2024-11-07 17:35
尕多萨格舍得噶倒萨速度速度感热心网友 时间:2024-11-07 17:33
#include<stdio.h>
int main()
{int factorsum(int number);
int m,n,a;
m>=1;
n<=1000;
scanf("%d,%d",&m,&n);//要输入逗号 你输入数据时有没输入逗号呢?
for (a=m;a<=n;a++)
{if (a==factorsum(a))//是等于号 就这一个问题 其它地方都是对的
printf("%d ",a);
}
}
int factorsum(int number)
{int i=1,a=0;
for(i=1;i<number;i++)
{if(number%i==0)
a=a+i;
}
return a;
}
热心网友 时间:2024-11-07 17:34
factorsum函数定义有误,里面的a与之前的a可能有冲突,换个名称试试。