也称为多循环,在一个循环中嵌套使用一个或多个循环。
嵌套循环的基本结构就是在一个循环中,循环体包含了另一个循环的情况。下面我用几个嵌套循环的例子来深入理解嵌套循环。
循环图案打印
分别打印下面三种图案:
思路分析
一般来说,单循环打印的图案都是线性的,要么是横线要么是竖线。那么我们这里需要打印一个二维图形,就需要从线跨越到面。那么我们只要有很多条线就能构成一个平面,所以我们这里打印二维图形就需要两个循环来实现。
那么我们这里规定外层循环控制行,内层循环控制列。然后找到图形中行与列的关系,通过控制内层循环的循环条件,就可以打印出需要的图形。
1. 实心菱形星星
菱形可以看做两个三角形组成的,一个正等腰三角,一个倒等腰三角。这里就可以通过if语句来根据行数改变列的循环条件,从而实现打印两个图形并组合。
下面是参考代码:
#include <iostream>
using namespace std;
int main() {
// 打印菱形星星
int row_max = 7;
int col_max, space_max;
// 外层循环控制行 (行数,换行)
// 内层循环控制列 (列数,列的图形)
for (int row = 0; row < row_max; row++) {
if (row < 4) { // 第4行之前*号数量为 2*row ,空格数量为 2-row
col_max = 2 * row;
space_max = 2 - row;
} else { // 第4行之后*号数量递减2,空格数量递增1
col_max -= 2;
space_max += 1;
}
// 打印*号前的空格
for (int space = 0; space <= space_max; space++) {
cout << " &