用C语言编写程序,用递归方法求1+3!+5!+7!+9!+11!+13!
时间: 2023-11-27 11:03:39 浏览: 30
以下是用C语言编写程序,用递归方法求1+3!+5!+7!+9!+11!+13!的代码:
```c
#include <stdio.h>
int factorial(int n) {
if (n == 1) {
return 1;
} else {
return n * factorial(n - 1);
}
}
int main() {
int sum = 0;
for (int i = 1; i <= 13; i += 2) {
sum += factorial(i);
}
printf("%d\n", sum);
return 0;
}
```
输出结果为:``223927704``。
相关问题
用c语言编写程序,递归方法求1!+2!+3!+4!+5!的值
以下是用C语言递归方法求1!+2!+3!+4!+5!的值的程序:
```c
#include <stdio.h>
int fun(int x) {
if (x == 0) return 1;
return x * fun(x - 1);
}
int main() {
int a;
int sum = 0;
scanf("%d", &a);
for (int i = 1; i <= a; i++) {
sum = sum + fun(i);
}
printf("%d", sum);
return 0;
}
```
运行结果为:153。
用VC++6.0编写一C语言程序,用递归算法求1!+2!+3!+…+n!
以下是用VC++6.0编写的递归算法求1!+2!+3!+…+n!的C语言程序:
```c
#include <stdio.h>
int factorial(int n) {
if (n <= 1) {
return 1;
} else {
return n * factorial(n-1);
}
}
int sum_of_factorials(int n) {
if (n == 1) {
return 1;
} else {
return factorial(n) + sum_of_factorials(n-1);
}
}
int main() {
int n;
printf("请输入n的值:");
scanf("%d", &n);
printf("1!+2!+3!+...+%d! = %d\n", n, sum_of_factorials(n));
return 0;
}
```
程序中使用了两个递归函数:`factorial`和`sum_of_factorials`。`factorial`函数计算给定数字的阶乘,`sum_of_factorials`函数使用递归计算1!+2!+3!+…+n!的和。
注意:VC++6.0是一个过时的开发工具,建议使用更新的工具进行开发。