输入2 个正整数m 和n(m≥1,n≤1 000),输出m ~n 之间的所有完数,完数就是因子和与它本身相等的数
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了输入2 个正整数m 和n(m≥1,n≤1 000),输出m ~n 之间的所有完数,完数就是因子和与它本身相等的数相关的知识,希望对你有一定的参考价值。
要求定义并调用函数factorsum(number),它的功能是返回number的因子和。
例如,factorsum(12)的返回值是16(1 +2 +3 +4 +6)。
【输入形式】
从键盘输入2个正整数m和n。
【输出形式】
输出m ~n之间的所有完数。
【样例输入1】(下划线部分为键盘输入,其余部分为程序输出)
Input m:1
Input n:100
【样例输出1】(输出格式控制符为:%5d)
1 6
28
【样例输入2】(下划线部分为键盘输入,其余部分为程序输出)
Input m:1
Input n:500
【样例输出2】(输出格式控制符为:%5d)
1 6
28 496
【样例说明】
输入提示符后要加一个空格。例如“Input a:”,其中“:”后要加一个且只能一个空格。
英文字母区分大小写。必须严格按样例输入输出。
【】求帮忙看看那里错了
#include<stdio.h>
int factorsum(int n);
int main(void)
int m,n,i;
printf("Input m: ");
scanf("%d",&m);
printf("Input n: ");
scanf("%d",&n);
for(i=m;i<=n;i++)
if(i==factorsum(i))
printf("5d",i);
return 0;
int factorsum(int n)
int i,sum=0;
for(i=2;i<n;i++)
if(n%i==0)
sum=sum+i;
return sum;
以上是关于输入2 个正整数m 和n(m≥1,n≤1 000),输出m ~n 之间的所有完数,完数就是因子和与它本身相等的数的主要内容,如果未能解决你的问题,请参考以下文章
输入一个正整数repeat(0<repeat<10),做repeat次下列运算:读入2个正整数m和n(1<=m,n<=1000),输出m和n之间所有满足各位数字的立方和等于它本