1 条题解
-
0
题目:计算1到n的阶乘
思路分析
-
任务拆解:
- 输入一个正整数n
- 计算从1乘到n的乘积(阶乘)
- 输出乘积结果
-
关键点分析:
- 使用循环累乘,每次乘一个递增的数
- 使用变量s记录乘积,初始值必须为1(乘法的单位元)
- 使用变量a表示当前要乘的数
-
步骤规划:
- 输入整数n
- 初始化乘积s=1,起始数a=1
- 循环n次
- 每次循环将a乘到s中
- 每次循环a增加1
- 输出乘积s
-
代码对应:
int n,s=1,a=1;- 定义n、乘积、当前数(注意s初始为1)cin>>n;- 输入nfor(int i=1;i<=n;i++)- 循环n次s=s*a;- 乘以当前数a=a+1;- 当前数增加1cout<<s;- 输出阶乘结果
更简单的写法: 可以直接用
s=s*i,不需要变量a,因为循环变量i就是从1到n递增的。 -
- 1
信息
- ID
- 5
- 时间
- 1000ms
- 内存
- 16MiB
- 难度
- 4
- 标签
- (无)
- 递交数
- 1232
- 已通过
- 527
- 上传者