帮我编写一个C语言代码,通过函数求 Sn=1!+2!+3!+4!+5!+…+n! 之值,其中 n 是一个数字,由键盘输入
时间: 2023-07-08 16:33:04 浏览: 102
好的,以下是求 Sn=1!+2!+3!+4!+5!+…+n! 的 C 语言代码:
```c
#include <stdio.h>
int factorial(int n) {
if (n == 0) {
return 1;
} else {
return n * factorial(n-1);
}
}
int sum_of_factorials(int n) {
int sum = 0;
for (int i = 1; i <= n; i++) {
sum += factorial(i);
}
return sum;
}
int main() {
int n;
printf("请输入一个数字:");
scanf("%d", &n);
printf("Sn的值为:%d\n", sum_of_factorials(n));
return 0;
}
```
代码中也分为两个函数:`factorial`函数用于计算阶乘,`sum_of_factorials`函数用于计算 Sn 的值。首先从键盘输入一个数字 n,然后调用 `sum_of_factorials` 函数计算 Sn 的值,并打印输出结果。
相关问题
c语言编写函数求 Sn=1!+2!+3!+4!+5!+...+n! 的值
以下是C语言编写函数求Sn=1!+2!+3!+4!+5!+...+n!的值的代码:
```c
#include <stdio.h>
int fun(int x) {
if (x == 0) return 1;
return x * fun(x - 1);
}
int main() {
int n, sum = 0;
scanf("%d", &n);
for (int i = 1; i <= n; i++) {
sum += fun(i);
}
printf("%d", sum);
return 0;
}
```
用c语言写:通过函数求 Sn=1!+2!+3!+4!+5!+…+n! 之值,其中 n 是一个数字,由键盘输入。
以下是用C语言编写的通过函数求Sn=1!+2!+3!+4!+5!+…+n!之值的代码:
```c
#include <stdio.h>
long int factorial(int n) {
if (n == 1) {
return 1;
} else {
return n * factorial(n - 1);
}
}
int main() {
int n;
long int sum = 0;
printf("请输入一个数字n:");
scanf("%d", &n);
for (int i = 1; i <= n; i++) {
sum += factorial(i);
}
printf("Sn的值为:%ld", sum);
return 0;
}
```
阅读全文