请编写函数fun,它的功能是:计算并输出n(包括n)以内能被5或9整除的所有自然数的倒数之和。要求n的值不大于100
时间: 2024-09-10 16:23:18 浏览: 49
好的,这里是一个C语言函数的实现,它会计算并输出n(包括n)以内能被5或9整除的所有自然数的倒数之和。考虑到n的值不大于100,我们将对输入进行检查以确保它满足这个条件。
```c
#include <stdio.h>
double fun(int n) {
if (n > 100) {
printf("Error: n should not be greater than 100.\n");
return -1; // 返回-1表示错误
}
double sum = 0.0;
for (int i = 1; i <= n; ++i) {
if (i % 5 == 0 || i % 9 == 0) {
sum += 1.0 / i;
}
}
printf("The sum of the reciprocals of numbers up to %d that are divisible by 5 or 9 is: %f\n", n, sum);
return sum;
}
int main() {
int n;
printf("Enter a number (n <= 100): ");
scanf("%d", &n);
fun(n);
return 0;
}
```
这段代码中,函数`fun`接受一个整数`n`作为参数,然后计算并返回一个`double`类型的值,表示所有小于等于`n`的、能被5或9整除的自然数的倒数之和。如果输入的`n`大于100,则函数会打印错误信息并返回-1。`main`函数用于从用户那里获取`n`的值并调用`fun`函数。
阅读全文