编程计算 s=1!+2!+3!+...+19!+20!的结果。在程序中,用 long long 类型存储结果。(输出格式:%lld)。
时间: 2023-11-17 22:00:11 浏览: 37
可以使用两种方法来计算s=1!+2!+3!+...+19!+20!的结果,一种是使用while循环,另一种是使用递归函数调用阶乘方法求和。在程序中,需要使用long long类型存储结果。
方法一:使用while循环来计算
n = 20
jie = 1
sum = 0
i = 1
while n >= i:
jie = jie * i
sum = sum + jie
i = i + 1
print("%lld" % sum)
方法二:使用递归函数调用阶乘方法求和
def jiecheng(n):
if n == 1:
return 1
else:
return n * jiecheng(n-1)
n = 20
sum = 0
for i in range(1, n+1):
sum = sum + jiecheng(i)
print("%lld" % sum)
相关问题
本关任务:编写一个小程序,输入整数n,求S=1+(1+2)+…+(1+2+3+…+n)的 值。 编程要求 根据提示,在右侧编辑器补充代码,计算并输出S的值。 开始你的任务吧,祝你成功! 四代码文件 10 11 12 13 14 15 16 17 18 19 20
以下是 Python 代码实现:
```python
n = int(input("请输入一个整数:"))
sum = 0 # 初始化S的值
for i in range(1, n+1):
tmp_sum = 0 # 用于计算1+2+3+...+i的值
for j in range(1, i+1):
tmp_sum += j
sum += tmp_sum # 将1+2+3+...+i的值累加到S中
print("S的值为:", sum)
```
代码思路:
1. 首先输入一个整数n;
2. 初始化S的值为0;
3. 采用两层循环,外层循环从1到n,内层循环从1到i,用于计算1+2+3+...+i的值;
4. 将1+2+3+...+i的值累加到S中;
5. 循环结束后输出S的值。
代码输出示例:
```
请输入一个整数:4
S的值为: 20
```
用C语言编程,输入一个整数的二目运算式的字符串,如100+20,332-19,200*2333,44/33 二目运算取”加减乘除“中的一种 输出运算式的整数结果值 输入:"%s" 输出:"%d" 程序运行结果示例: 5376/112↙ 48
好的,您可以将您的问题交给我,我会尽力回答的。对于您的问题,我可以提供以下代码,希望能够帮到您:
```c
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
int main()
{
char str[100];
int num1, num2, result;
char op;
printf("请输入一个二目运算式:\n");
scanf("%s", str);
// 使用sscanf函数进行格式化输入,提取两个数字和运算符
sscanf(str, "%d%c%d", &num1, &op, &num2);
switch(op) {
case '+':
result = num1 + num2;
break;
case '-':
result = num1 - num2;
break;
case '*':
result = num1 * num2;
break;
case '/':
result = num1 / num2;
break;
default:
printf("输入的运算符不合法!\n");
exit(1);
}
printf("运算结果为:%d\n", result);
return 0;
}
```
这段代码实现的功能是读入一个二目运算式字符串,提取出其中的两个数字和运算符,然后根据运算符进行对应的计算并输出结果。希望对您有所帮助!