循环嵌套

94 阅读1分钟

一、定义

有时为了解决一个较复杂的问题,需要在一个循环中再定义一个循环,这样的方式就称作循环嵌套。在 C 语言中,while、do…while、for 语句都可以进行嵌套。

二、for循环嵌套

1、for 语句的嵌套是较常见的循环嵌套,其语法格式如下
#include <stdio.h>
int main(){
    for(初始化表达式; 循环条件; 操作表达式){
        
        for(初始化表达式1; 循环条件1; 操作表达式1){
          
            执行语句
        }
    }
}
2、在 for 循环嵌套中,外层循环每执行一次,内层循环体中的语句也会执行一次。

例如

#include <stdio.h>
int main(){ 
    for(int i=1;i<=5;i++){
    
        for(int j=1;j<=i;j++){ 
            printf("%d", i);
        }
        printf("\n");
    }        
    return 0;
}

结果如下:

image.png

3、将上述结果倒过来,有两种方法

(1)将int j=1改为int j=5,j<=i改为j>=i,j++改为j--

#include <stdio.h>
int main(){ 
    for(int i=1;i<=5;i++){ 
    
       for(int j=5;j>=i;j--){ 
           printf("%d", i); 
       }
       printf("\n");
    }
    return 0;
}

(2)将j<=i改为j<=6-i

#include <stdio.h>
int main(){
    for(int i=1;i<=5;i++){
       
        for(int j=1;j<=6-i;j++){
            printf("%d", i);
        }
        printf("\n");
    }
    
    return 0;
}

上述两种方式结果如下:

image.png