我想要这个的C语言题目: 根据下式求s的值,其中n由键盘输入。 s=1+ \frac {1+2}{2!}+ \frac {1+2+3}{3!}+ \cdots \cdots + \frac {1+2+3+ \cdots +n}{n!} 说明:(1)要求使用循环实现;(2)输出结果保留5位小数,形式为:s=1234.56789 窗口切换
时间: 2023-08-04 15:05:02 浏览: 335
好的,以下是代码实现:
```c
#include <stdio.h>
int main() {
int n, i, j;
double sum = 0, fac = 1;
scanf("%d", &n);
for (i = 1; i <= n; i++) {
double temp = 0;
for (j = 1; j <= i; j++) {
temp += j;
}
fac *= i;
sum += temp / fac;
}
printf("s=%.5f", sum);
return 0;
}
```
解释一下代码的实现过程:
- 首先,我们从键盘输入 n 的值。
- 接下来,我们使用两个循环,分别计算每一项分数的分子和分母,然后求和,得到 s 的值。
- 外层循环从 1 循环到 n,内层循环从 1 循环到 i,每次将 j 加到 temp 中,得到分子的值。
- 每次内层循环结束后,我们计算分母,即 i 的阶乘,然后将 temp/fac 加到 sum 中。
- 最后,我们输出结果,保留 5 位小数。
阅读全文