C语言编程中函数,求 Sn=1!+2!+3!+4!+5!+…+n! 之值,其中 n 是一个数字 输入描述 n(1<=n<=20) 输出描述 和 样例 输入 5 输出 153
时间: 2024-04-15 16:21:12 浏览: 20
以下是一个C语言编程中函数,求 Sn=1!+2!+3!+4!+5!+…+n! 之值的例子:
```c
#include <stdio.h>
long long int factorial(int n);
int main() {
int n;
long long int sum = 0;
scanf("%d", &n);
for (int i = 1; i <= n; i++) {
sum += factorial(i);
}
printf("%lld", sum);
return 0;
}
long long int factorial(int n) {
long long int result = 1;
for (int i = 1; i <= n; i++) {
result *= i;
}
return result;
}
```
相关问题
C语言编程:求和sn=1/1+1/(1+2)+1/(1+2+3)+…+1/(1+2+3+…n)
这是一个求和问题,公式为:sn=1/1+1/(1+2)+1/(1+2+3)+…+1/(1+2+3+…)。下面是一个C语言实现方法:
```
#include <stdio.h>
#include <stdlib.h>
double fun(int n) {
double s = 0.0;
int i, j;
for (i = 1; i <= n; i++) {
double t = 0.0;
for (j = 1; j <= i; j++) {
t += j;
}
s += 1.0 / t;
}
return s;
}
int main() {
int n = 5;
double result = fun(n);
printf("result is %f\n", result);
system("pause");
return 0;
}
```
其中,fun函数的参数n表示求和的项数,返回值为求和结果。在函数中,我们使用了两个循环,外层循环控制求和的项数,内层循环用于计算每一项的分母。最后将每一项的倒数相加即可得到总和。
C语言编程题S=1-1/3+1/5-1/7
根据引用[1]中提供的公式,可以使用C语言编写一个函数来计算S的值,并将结果通过指针传回。以下是一个示例代码:
```c
void fun(float *sn, int n) {
float s = 0.0;
int i;
for (i = 0; i <= n; i++) {
s += pow(-1, i) / (2 * i + 1);
}
*sn = s;
}
```
在这个函数中,我们使用了一个for循环来计算公式中的每一项,并将它们相加得到最终的结果。我们使用了pow函数来计算-1的幂,以便在每一项中交替使用加法和减法。
要使用这个函数来计算S的值,只需要调用它并传入n的值和一个指向float类型变量的指针,以便将结果传回。以下是一个示例代码:
```c
#include <stdio.h>
int main() {
float s;
fun(&s, 10);
printf("S = %f\n", s);
return 0;
}
```
在这个示例代码中,我们调用了fun函数来计算S的值,并将结果存储在变量s中。然后,我们使用printf函数将结果输出到控制台。