C Primer Plus(6) 中文版 第6章 C控制语句:循环 6.10 嵌套循环

发布于:2023-01-13 ⋅ 阅读:(469) ⋅ 点赞:(0)

6.10 嵌套循环
嵌套循环(nested loop)指在一个循环内包含另一个循环。嵌套循环常用于按行和列显示数据,也就是说,一个循环处理一行中的所有
列,另一个循环处理所有的行。
/* rows1.c -- uses nested loops */
#include <stdio.h>
#define ROWS  6
#define CHARS 10
int main(void)
{
    int row;
    char ch;
    
    for (row = 0; row < ROWS; row++)              /* line 10 */
    {
        for (ch = 'A'; ch < ('A' + CHARS); ch++)  /* line 12 */
            printf("%c", ch);
        printf("\n");
    }
    
    return 0;

/* 输出:

*/ 

外层循环(outer loop)。外层循环从row为0开始循环,到row为6时结束。 
内层循环(inner loop)。内存循环从ch为'A'开始循环,到ch为'A'+CHARS时结束。 
注意,嵌套循环中的内层循环在每次外层循环迭代时都执行完所有的循环。
6.10.2 嵌套变式
可以通过外层循环控制内层循环,在每次外层循环迭代时内存循环完成不同的任务。
内层循环开始打印的字符取决于外层循环的迭代次数。
// rows2.c -- using dependent nested loops
#include <stdio.h>
int main(void)
{
    const int ROWS = 6;
    const int CHARS = 6;
    int row;
    char ch;
    
    for (row = 0; row < ROWS; row++)
    {
        for (ch = ('A' + row);  ch < ('A' + CHARS); ch++)
            printf("%c", ch);
        printf("\n");
    }
    
    return 0;

/* 输出:

*/ 


网站公告

今日签到

点亮在社区的每一天
去签到