用C语言编写一个函数求和s=1+1/22+1/333+1/4444+......
时间: 2023-08-23 19:05:52 浏览: 145
以下是用 C 语言编写的函数,可以求和 s=1+1/22+1/333+1/4444+......:
```
#include <stdio.h>
double sum() {
double s = 0;
double d = 10;
int i;
for (i = 1; i <= 10; i++) {
s += 1 / d;
d = d * 10 + 1;
}
return s + 1;
}
int main() {
double s = sum();
printf("s = %f\n", s);
return 0;
}
```
在这个函数中,我们使用了一个循环来计算每一项的值,并将它们累加到变量 s 中。变量 d 初始值为 10,表示第一项的分母是 2 位数。在每次循环中,我们将 d 更新为前一项的分母再加上一个 1,以便求出下一项的值。最后一项的分母是 11 个 1,所以我们需要额外加上一个 1,才能得到完整的和。
相关问题
编写一段C语言代码:输入n,求和:1+1/2+1/3+...+1/n
好的,以下是一段 C 语言代码,可以实现输入 `n`,求和 `1+1/2+1/3+...+1/n` 的功能:
```c
#include <stdio.h>
int main() {
int n;
double sum = 0;
printf("请输入 n:");
scanf("%d", &n);
for (int i = 1; i <= n; i++) {
sum += 1.0 / i; // 注意此处要用 1.0 而不是 1
}
printf("1+1/2+1/3+...+1/n = %lf", sum);
return 0;
}
```
这段代码使用 `scanf` 函数读入变量 `n` 的值,然后使用 `for` 循环计算和。循环从 `1` 到 `n`,将每个数的倒数加到变量 `sum` 中,最后输出 `sum` 的值。注意,在计算倒数时要将 `1` 转换为 `1.0`,否则会得到整数结果。
c语言编写函数fun,按照y=1+1/2*2+1/33…+1/m*m公式求和
下面是按照给出公式编写的函数fun的C语言代码:
```c
float fun(int m) {
float sum = 0;
for(int i=1; i<=m; i++) {
sum += 1.0 / (i*i);
}
return sum + 1;
}
```
这个函数接受一个整数参数m,返回公式y=1+1/2*2+1/3*3…+1/m*m求和的结果。在函数内部,我们使用循环来计算这个公式的值,最后将结果返回。需要注意的是,在计算1/(i*i)时,我们需要将除数和被除数都转换为浮点数,否则整数除法会导致结果为0。另外,最后的常数1也需要加上去。