【GESP】C++一级练习BCQM3013、BCQM3014,初识for循环
两道会用到for循环的题。从启蒙开始第一次接触for循环。
BCQM3013
题目要求
描述
人们在非洲列朋波山脉的一个岩洞中发现了个骨头,是古人刻痕计数用的,尼克每天背一首诗,并模仿古人在木棒上刻一条痕。连续刻了五天后,问有多少条刻痕。
输入
无
输出
刻痕的条数。
输入样例
无
输出样例
1
5
题目分析
如果你用肉脑数出结果然后直接输出5,我觉得这显然违背了出题人的意图。通过for
循环来模拟每日刻痕的过程,然后累加刻痕数,最后输出结果,这道题才有价值。
代码参考
1
2
3
4
5
6
7
8
9
10
#include <cstdio>
int main() {
int a = 0;
for (int i = 1; i <= 5; i++) {
// 从第一天开始,每天刻痕数+1
a += 1;
}
printf("%d", a);
return 0;
}
BCQM3014
题目要求
描述
若有三个连续的自然数,已知第一个自然数为100,请编写程序输出这三个自然数(每行输出一个数)。
输入
无
输出
刻输出三个连续的自然数,每行一个。
输入样例
无
输出样例
1
2
3
100
101
102
题目分析
与BCQM3013类似,通过for
循环来累加才有价值。
代码参考
1
2
3
4
5
6
7
8
9
10
11
#include <cstdio>
int main() {
// 初始100开始
int a = 100;
// 循环3次,数3个数
for (int i = 0; i < 3; i++) {
printf("%d\n", a);
a += 1;
}
return 0;
}
所有代码已上传至Github:https://github.com/lihongzheshuai/yummy-code
本文由作者按照 CC BY 4.0 进行授权