06 C循环补充

2018-10-30  本文已影响0人  亨锅锅

1、补充

#include <stdio.h>

int main()
{
    /*
     * 循环是可以嵌套的, 而且在企业开发中用的还比较多
     * 但是有一个注意点: 在企业开发中一般情况下,循环嵌套不会超过两层, 最多不超过三层
     *
     * 规律:
     * 循环嵌套的时候, 内循环执行的次数,就是外循环执行的次数*内循环执行的次数
     */

//    for(int i = 0; i < 2; i++){
//        for(int j = 0; j < 3; j++){
//            printf("随便写点东西\n");
//        }
//    }

    /*
     * 好友分组1
     *    好友1
     *    好友2
     * 好友分组2
     *    好友1
     *    好友2
     * 好友分组3
     *    好友1
     *    好友2
     */
    /*
    printf("好友分组1\n");
    printf("    好友1\n");
    printf("    好友2\n");
    printf("    好友3\n");
    printf("    好友4\n");

    printf("好友分组2\n");
    printf("    好友1\n");
    printf("    好友2\n");
    printf("    好友3\n");
    printf("    好友4\n");

    printf("好友分组3\n");
    printf("    好友1\n");
    printf("    好友2\n");
    printf("    好友3\n");
    printf("    好友4\n");
    */
    /*
    for(int num = 1; num <= 3; num++){
        printf("好友分组%i\n", num);
        printf("    好友1\n");
        printf("    好友2\n");
        printf("    好友3\n");
        printf("    好友4\n");
    }
    */
    for(int num = 1; num <= 3; num++){
        printf("好友分组%i\n", num);
        for(int j = 1; j <= 2; j++){
            printf("    好友%i\n", j);
        }
    }
    return 0;
}

2、练习

#include <stdio.h>

int main()
{
    /*
     * 需求:
       ****
       ****
       ****
     */
//    printf("****\n");

//    printf("*");
//    printf("*");
//    printf("*");
//    printf("*");
//    printf("\n");

//    for(int i = 0; i < 4; i++){
//        printf("*");
//    }
//    printf("\n");

//    for(int i = 0; i < 4; i++){
//        printf("*");
//    }
//    printf("\n");

//    for(int i = 0; i < 4; i++){
//        printf("*");
//    }
//    printf("\n");

    // 规律: 循环嵌套的时候, 外循环控制行数, 内循环控制列数
    for(int j = 0; j < 3; j++){
        for(int i = 0; i < 4; i++){
            printf("*");
        }
        printf("\n");
    }
    return 0;
}

#include <stdio.h>

int main()
{
    /*
     * 需求
     ---
     --
     -
     注意: 在企业开发中, 但凡遇到需要解决很多行很多列的问题, 就要想到循环嵌套
     */

    /*
     * ---
     * ---
     * ---
     */

//    for(int i = 0; i < 3; i++){ // 行数
//        for(int j = 0; j < 3; j++){ // 列数
//            printf("-");
//        }
//        printf("\n");
//    }

    // 定义变量控制列数
//    int count = 0; // 0 1 2
//    for(int i = 0; i < 3; i++){ // 行数
//        // 第一次执行内循环 : j = 0 1 2
//        // 第二次执行内循环:  j = 1 2
//        // 第三次执行内循环:  j = 2
//        for(int j = count; j < 3; j++){ // 列数
//            printf("-");
//        }
//        printf("\n");
//        count++;
//    }


    // 规律: 尖尖朝下, 修改内循环的初始化表达式
    for(int i = 0; i < 3; i++){ // 行数
//        printf("i = %i\n", i);
        for(int j = i; j < 3; j++){ // 列数
            printf("-");
        }
        printf("\n");
    }
    return 0;
}

#include <stdio.h>

int main()
{
    /*
     -
     --
     ---
     */
    int count = 0;
//    for(int i = 0; i < 3; i++){ // 行数
//        for(int j = 0; j <= count; j++){ // 列数
//            printf("-");
//        }
//        printf("\n");
//        count++;
//    }

    // 规律: 尖尖朝上, 修改内循环条件表达式
    for(int i = 0; i < 3; i++){ // 行数
        for(int j = 0; j <= i; j++){ // 列数
            printf("-");
        }
        printf("\n");
    }
    return 0;
}

#include <stdio.h>

int main()
{
    /*
     1
     12
     123

     1
     22
     333

     ---*
     --***
     -*****

     *
     ***
     *****
     */

//    for(int i = 0; i < 3; i++){ // 行数
//        for(int j = 0; j <= i; j++){ // 列数
////            printf("%i", j + 1);
//            printf("%i", i + 1);
//        }
//        printf("\n");
//    }


//    for(int i = 0; i < 3; i++){ // 行数
//        for(int j = i; j < 3; j++){ // 列数
//                printf("-");
//        }
//        printf("\n");
//    }

//    for(int i = 0; i < 3; i++){ // 行数
//        for(int j = 0; j <= i; j++){ // 列数
//               printf("*");
//        }
//        printf("\n");
//    }

//    for(int i = 0; i < 3; i++){ // 行数
//        for(int j = i; j < 3; j++){ // 列数
//                printf("-");
//        }
//        for(int j = 0; j <= i; j++){ // 列数
//               printf("*");
//        }
//        printf("\n");
//    }


    for(int i = 0; i < 3; i++){ // 行数
        for(int j = i; j < 3; j++){ // 列数
                printf(" ");
        }
        for(int j = 0; j <= i * 2; j++){ // 列数
               printf("*");
        }
        printf("\n");
    }
    return 0;
}

上一篇 下一篇

猜你喜欢

热点阅读