Menu
CoddyTech

嵌套循环

本课属于 Coddy C++ 学习旅程的“基础知识”单元。第 48 课,共 74 课。

嵌套循环就是一个循环套在另一个循环中。外层循环每运行一次,内层循环都会完成所有迭代。

一个很贴切的例子是时钟:外层循环的每个小时中,内层循环的分针都必须完整走完 60 分钟。

嵌套循环示例:

int rows = 2;
int cols = 2;
for (int x = 0; x < rows; x++) {
	for (int y = 0; y < cols; y++) {
		std::cout << x << " " << y << std::endl;
	}
}
// 这会输出:
// 0 0
// 0 1
// 1 0
// 1 1

外层循环(x)运行 rows 次,每次运行时,内层循环(y)都会运行 cols 次。每个循环都有自己的计数器:外层循环每运行一次,y 都会从 0 重新开始,而 rows 和 cols 保持不变,只用于告诉循环何时停止。

challenge icon

挑战

入门

编写一个程序,用星号(*)打印出给定宽度和高度的矩形。

输入:两个整数:width 和 height(初始代码已经读取了它们)。

例如:

如果 width = 5 且 height = 3,输出应为:

*****
*****
*****

如果 width = 4 且 height = 6,输出应为:

****
****
****
****
****
****

每个循环使用一个新的计数器(例如,用 i 表示行,用 j 表示每行中的星号),并将计数器与 height 或 width 进行比较。不要修改 height 和 width 本身:每一行都需要再次使用 width。

亲手试试

#include <iostream>

int main() {
    int width, height;
    std::cin >> width >> height;
    // 在下方编写你的代码

    return 0;
}
quiz icon自我测试

这节课包含一个小测验。开始学习即可作答,并记录你的进度。

基础知识中的所有课

自己练习: C++ 在线编译器