请编写函数fun(int n),计算并输出n(包括n)以内能被5或9整除的所有自然数的倒数之和。例如,若主函数从键盘给n输入20后,则输出为0.58。
时间: 2023-11-05 12:04:38 浏览: 70
C语言编程-编写函数fun求1!+2!+3!+ …… +n!的和,在main函数中由键盘输入n值,并输出运算结果;
5星 · 资源好评率100%
以下是一个可能的实现:
```c
#include <stdio.h>
double fun(int n) {
double sum = 0;
int i;
for (i = 1; i <= n; i++) {
if (i % 5 == 0 || i % 9 == 0) {
sum += 1.0 / i;
}
}
return sum;
}
int main() {
int n;
double result;
printf("请输入一个正整数n:");
scanf("%d", &n);
result = fun(n);
printf("%f\n", result);
return 0;
}
```
这里定义了一个 `fun` 函数,它接受一个整数 `n`,计算并返回 `n` 以内能被 5 或 9 整除的所有自然数的倒数之和。在 `main` 函数中,从键盘读入 `n`,调用 `fun` 函数计算结果并输出。注意要使用 `double` 类型来存储结果,以确保精度。
阅读全文