题目
1.(填空题)#题目:输入整数n,求n!例如输入:5输出:120n=eval(input())i=1【1】while(【2】):t=【3】i=【4】print(t)
1.(填空题)
#题目:输入整数n,求n!
例如输入:5
输出:120
n=eval(input())
i=1
【1】
while(【2】):
t=【3】
i=【4】
print(t)
题目解答
答案
根据题目要求,需计算 $ n! $。核心是使用 `while` 循环实现累乘。
- 初始值:`t = 1`,`i = 1`。
- 循环条件:`i <= n`。
- 每次循环更新:`t = t * i`,`i = i + 1`。
- 最后输出 `t`。
完整代码:
```python
n = eval(input())
i = 1
t = 1
while(i <= n):
t = t * i
i = i + 1
print(t)
```
填空部分:
【1】`t = 1`
【2】`i <= n`
【3】`t * i`
【4】`i + 1`
此代码可正确计算任意正整数 $ n $ 的阶乘。例如,输入 5 时,输出为 120。
解析
考查要点:本题主要考查阶乘的计算以及循环结构的应用,需要学生理解阶乘的定义,并能用while循环实现累乘过程。
解题核心思路:
- 阶乘定义:$n! = 1 \times 2 \times 3 \times \dots \times n$,初始结果为1,逐步乘以每个数。
- 循环条件:循环变量
i从1开始,直到i <= n时继续执行。 - 变量更新:每次循环将当前
i乘到结果变量t中,并递增i。
破题关键点:
- 初始化结果变量
t为1。 - 循环条件确保所有数都被相乘。
- 更新规则正确维护
t和i的值。
【1】初始化结果变量
阶乘计算需要从1开始累乘,因此初始结果变量t必须设为1。
填空:t = 1
【2】循环条件
循环需要执行n次,每次处理一个乘数。当i从1递增到n时,循环应继续。
填空:i <= n
【3】更新结果变量
每次循环将当前i乘到t中,即t = t * i。
填空:t * i
【4】递增循环变量
循环变量i需要每次加1,确保遍历所有乘数。
填空:i + 1