控制流程语句--循环结构--嵌套循环--双重for循环

程序示例

需求1:请输出一个4行5列的星星(*)图案

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

        需求2:    用循环实现打印如下三角形的*图案


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


public class ForNestDemo {
    public static void main(String[] args) {

//     需求一
        for(int i=1;i<=5;i++){           ⬅输出一行五个 * 
            System.out.print("*\t");
        }
        System.out.println();             ⬅实现换行

        for(int i=1;i<=5;i++){
            System.out.print("*\t");
        }
        System.out.println();

        for(int i=1;i<=5;i++){
            System.out.print("*\t");
        }
        System.out.println();

        for(int i=1;i<=5;i++){
            System.out.print("*\t");
        }
        System.out.println();

                    ⬇(这样代码还有重复的地方,再用for循环改进)

      //for循环的嵌套--双重for循环


        for (int i = 1; i <= 4; i++) {                 // 外层的for循环控制的是行
            for (int j = 1; j <= 5; j++) {             //内层的for循环控制的是列
                System.out.print("*\t");
            }
            System.out.println();
        }




        System.out.println("===========需求2====================");
/*    
          分析:
       1、总共有5行5列,我们可以先打印5行5列
              *   *   *   *   *
              *   *   *   *   *
              *   *   *   *   *
              *   *   *   *   *
              *   *   *   *   *
     
        2、第一行1个星,i=1,j=1       得出规律:j<=i
             第二行2个星,i=2,j=2
             第三行3个星,i=3,j=3
             第四行4个星,i=4,j=4
             第五行5个星,i=5,j=5

*/
        //第一步:先打五行五列。
        for (int i = 1; i <= 5; i++) {
            for (int j = 1; j <= 5; j++) {
                System.out.print("*\t");
            }
            System.out.println();
        }
        System.out.println("==================================");

       //第二步:把五行五列的形式变成下三角的形式。

        for (int i = 1; i <= 5; i++) {                 // 外层的for循环控制的是行             
            for (int j = 1; j <= i; j++) {             //内层的for循环控制的是列
                System.out.print("*\t");
            }
            System.out.println();
        }




        System.out.println("===========打印9行9列的*三角形===========");
        for (int i = 1; i <= 9; i++) {
            for (int j = 1; j <= i; j++) {
                System.out.print("*\t");
            }
            System.out.println();
        }

         //由上面的九行九列的*三角形,改一下输出语句就可以转化为九九乘法表。

        System.out.println("===========打印九九乘法表===========");
        for (int i = 1; i <= 9; i++) {
            for (int j = 1; j <= i; j++) {
                //1*1=1   1*2=2
                System.out.print(j + "*" + i + "=" + (i * j) + "\t");
            }
            System.out.println();
        }
    }
}
posted @ 2021-11-27 21:03  赤兔胭脂小吕布  阅读(103)  评论(0编辑  收藏  举报