1. 定义

Nested Loops 嵌套循环

循环内部包含另一个循环,通常外层循环控制行数,内层循环控制列数。

<aside> 🔄

结构特点:


2. 示例:打印乘法表

Multiplication Table 九九乘法表

#include <iostream>
#include <iomanip>
using namespace std;

int main() {
    cout << "Multiplication Table\\n";
    
    // 打印表头
    cout << "  |";
    for (int j = 1; j <= 9; j++)
        cout << setw(4) << j;
    cout << "\\n--+------------------------------------\\n";
    
    // 外层循环:控制行(1-9)
    for (int i = 1; i <= 9; i++) {
        cout << i << " |";
        
        // 内层循环:控制列(1-9)
        for (int j = 1; j <= 9; j++) {
            cout << setw(4) << i * j;  // 打印每个位置的乘积
        }
        cout << "\\n";
    }
    
    return 0;
}

输出效果:

Multiplication Table
  |   1   2   3   4   5   6   7   8   9
--+------------------------------------
1 |   1   2   3   4   5   6   7   8   9
2 |   2   4   6   8  10  12  14  16  18
3 |   3   6   9  12  15  18  21  24  27
4 |   4   8  12  16  20  24  28  32  36
5 |   5  10  15  20  25  30  35  40  45
6 |   6  12  18  24  30  36  42  48  54
7 |   7  14  21  28  35  42  49  56  63
8 |   8  16  24  32  40  48  56  64  72
9 |   9  18  27  36  45  54  63  72  81

3. 执行流程分析

以 3×3 乘法表为例:

<aside> 📊

外层循环 i = 1:

外层循环 i = 2:

外层循环 i = 3:

总执行次数: 3(外层)× 3(内层)= 9 次

</aside>


4. 常见嵌套循环模式

(1)打印矩形图案

// 打印 5×10 的星号矩形
for (int i = 0; i < 5; i++) {        // 5 行
    for (int j = 0; j < 10; j++) {    // 10 列
        cout << "* ";
    }
    cout << "\\n";
}

输出:

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