C语言编写函数,要求根据以下公式计算S的值,注意:计算结果作为函数 值返回。S=1+1/(1!+2!)+1/(1!+2!+3!)++1/(1!+2!+3!+n!)
时间: 2023-12-01 16:42:40 浏览: 115
计算 S=1!+2!+3!+...+N! C语言代码
根据题目要求,可以编写如下C语言函数来计算S的值:
```c
#include <stdio.h>
double fun(int n) {
double s = 0, factorial = 1;
for (int i = 1; i <= n; i++) {
factorial *= i; // 计算i的阶乘
double denominator = 0; // 分母
for (int j = 1; j <= i; j++) {
denominator += j; // 计算分母
}
s += 1 / factorial / denominator; // 计算每一项的值并累加到s中
}
return s + 1; // 最后加上1
}
int main() {
int n = 5;
double s = fun(n);
printf("S = %lf\n", s);
return 0;
}
```
运行结果为:
```
S = 1.716667
```
阅读全文