求1+2!+3!+...+n!的和
时间: 2023-11-24 19:52:18 浏览: 35
以下是两种C语言求1+2!+3!+...+n!的和的例子:
1.使用while循环
```c
#include <stdio.h>
#include <stdlib.h>
int main() {
int i=1,n,sum=0,s=1;
scanf("%d",&n);
while(i<=n) {
s=s*i;
sum+=s;
i++;
}
printf("%d\n",sum);
return 0;
}
```
2.使用for循环
```c
#include <stdio.h>
#include <stdlib.h>
int main() {
int n;
int i;
long long int a; //开大数
long long int sum;
while((scanf("%d",&n))!=EOF&&n<=20) //多个输入
{
for(a=1.0,sum=0.0,i=1;i<=n;i++) {
a=a*i;
sum+=a;
}
printf("%lld\n",sum);
}
return 0;
}
```
相关问题
python求1+2!+3!+...+N!的和
以下是两种Python求1+2!+3!+...+N!的和的方法:
1.使用for循环计算阶乘和
```python
n = int(input("请输入一个正整数:"))
sum = 0
factorial = 1
for i in range(1, n+1):
factorial *= i
sum += factorial
print("1+2!+3!+...+{}!的和为:{}".format(n, sum))
```
2.使用递归函数调用阶乘方法求和
```python
def jie(n):
if n == 1:
return 1
else:
return n*jie(n-1)
n = int(input("请输入一个正整数:"))
sum = 0
if n < 1 or n > 40:
print("请重新输入数据")
else:
for i in range(1, n+1):
sum += jie(i)
print("1+2!+3!+...+{}!的和为:{}".format(n, sum))
```
Python求1+2!+3!+...+n!的和.
以下是两种Python求1+2!+3!+...+n!的和的方法:
1.使用for循环计算阶乘和
```python
n = int(input("请输入一个正整数:"))
sum = 0
factorial = 1
for i in range(1, n+1):
factorial *= i
sum += factorial
print("1+2!+3!+...+n!的和为:", sum)
```
2.使用递归函数调用阶乘方法求和
```python
def jie(n):
if n == 1:
return 1
else:
return n*jie(n-1)
n = int(input("请输入一个正整数:"))
sum = 0
if n < 1 or n > 40:
print("请重新输入数据")
else:
for i in range(1, n+1):
sum += jie(i)
print("1+2!+3!+...+n!的和为:", sum)
```