文章

【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 进行授权