使用函数输出指定范围内的完数:输入两个正整数m和n(1≤m,n≤1000),输出m~n之间的所有完数,完数就是因子和与它本身相等的数。要求定义并调用函数factorsum(num),它的功能是返回number的因子和。
例如,factorsum(12)的返回值是16(1+2+3+4+6)。
#include<stdio.h>
int fact(int x);
int main(viod)
{
int a,b,i;
scanf("%d%d",&a,&b);
printf("The factorsum numbers are:");
for(i=a;i<=b;i++)
{
if(i==fact(i))
{
printf("\n%d",i);
}
}
return 0;
}
int fact(int x)
{
int i,n=0;
for(i=1;i<=x-1;i++)
{
if(x%i==0)
{
n=n+i;
}
}
return n;
}
样例输入
1 100
样例输出
The factorsum numbers are:
6
28