用函数fun求1!+2!+3!+...+20!的和
时间: 2023-11-17 13:01:45 浏览: 50
函数fun的作用是求n的阶乘,可以使用递归的方式实现。具体实现方法如下:
```c
double fun(int n){
if(n == 0){
return 1;
}
else{
return n * fun(n-1);
}
}
```
在主函数中,可以通过循环调用fun函数来求1!+2!+3!+...+20!的和,具体实现方法如下:
```c
#include <stdio.h>
double fun(int n);
int main(){
int n = 20;
double sum = 0;
for(int i=1; i<=n; i++){
sum += fun(i);
}
printf("1!+2!+3!+...+20!=%lf\n", sum);
return 0;
}
```
相关问题
函数fun求1!+2!+3!+...的和
好的,这是一个数学问题,函数 fun 可以这样实现:
```python
def fun(n):
if n == 1:
return 1
else:
return n * fun(n - 1)
# 求1! + 2! + 3! + ... + n!的和
def sum_fac(n):
sum = 0
for i in range(1, n + 1):
sum += fun(i)
return sum
```
使用这个函数可以求出 1! + 2! + 3! + ... + n! 的和。
编写函数fun求1!+2!+3!+......+n!的和
编写函数 `fun` 求前 `n` 个数的阶乘和。首先,我们需要明确阶乘的定义,即一个数的阶乘等于所有小于它的正整数的乘积。因此,函数 `fun` 需要接受一个参数 `n`,用来确定需要计算的阶乘数的范围。
算法如下:
1. 初始化变量 `sum` 为 0,用于存储阶乘的和。
2. 使用循环从 1 到 `n` 遍历每一个数 `i`。
3. 在循环内,定义变量 `factorial` 并将其初始化为 1。
4. 使用嵌套循环从 1 到 `i` 遍历每一个数 `j`,并将当前 `j` 的值乘以 `factorial`。
5. 将得到的 `factorial` 加到 `sum` 上。
6. 返回 `sum`,即为所求的阶乘和。
下面是示例代码:
```python
def fun(n):
sum = 0
for i in range(1, n+1):
factorial = 1
for j in range(1, i+1):
factorial *= j
sum += factorial
return sum
```
通过调用 `fun(n)` 函数,其中 `n` 是所需计算的阶乘数的个数,即可得到 `1! + 2! + 3! + ... + n!` 的和。