使用函数输出指定范围内的完数:输入两个正整数 m 和 n(1<=m,n<=1000),输出 m ~ n 之 间 的 所 有 完 数 , 完 数 就 是 因 子 和 与 它 本 身 相 等 的 数 。 要 求 定 义 并 调 用 函 数 factorsum(number),它的功能是返回 number 的因子和包括1。c语言
时间: 2024-01-26 14:03:10 浏览: 147
以下是使用函数输出指定范围内的完数的C语言代码:
```
#include <stdio.h>
int factorsum(int number) {
int sum = 1; // 因子和初始化为1,因为1一定是number的因子
for (int i = 2; i <= number / 2; i++) {
if (number % i == 0) {
sum += i; // i是number的因子,加入到因子和中
}
}
return sum;
}
void printPerfectNumbers(int m, int n) {
for (int i = m; i <= n; i++) {
if (i == factorsum(i)) { // 如果i等于它的因子和,说明i是完数
printf("%d ", i);
}
}
}
int main() {
int m, n;
printf("请输入两个正整数m和n:");
scanf("%d%d", &m, &n);
printf("%d到%d之间的完数有:", m, n);
printPerfectNumbers(m, n);
return 0;
}
```
其中,`factorsum`函数用于计算一个数的因子和,`printPerfectNumbers`函数用于输出指定范围内的完数。主函数中读入用户输入的m和n,然后调用`printPerfectNumbers`函数输出m到n之间的完数。
阅读全文
相关推荐

















