Java--双重循环

TIPS:冒泡排序的引出

外层i(第n趟)内层j(比较次数)
04
13
22
31

nums={2,12,4,20,1}

for(int i=0;i<5;i++){
for(int j=0;j<5-i;j++){
if(nums[j]>nums[j+1]){
  int temp=nums[j];
  nums[j]=nums[j+1];
  nums[j+1]=temp;
}
}
}

数组经典习题

前言:本案例将对经典的三角形问题进行解析,利用外层循环以及内部循环的结构结构来进行解决,书写的步分别为:
打印矩形,打印直角三角形,打印倒置直角三角形,打印等腰直角形,打印菱形,打印空心菱形,打印九九乘法表,嗯,暂且就这样吧

矩形

分析

****
****
****
****
外层内层
04
14
24
34
44
package com;

public class two {
    public static void main(String[] args) {
        for (int i = 0; i < 4; i++) {
            for (int j = 0; j < 4; j++) {
                System.out.print("*");
            }
            System.out.println();
        }
    }
}

在这里插入图片描述

直角三角形

*
**
***
****
外层i内层 j
01
12
23
34

i与j之间的关系:j=i+1

package com;

public class two {
    public static void main(String[] args) {
        for (int i = 0; i < 4; i++) {
            for (int j = 0; j < i+1; j++) {
                System.out.print("*");
            }
            System.out.println();
        }
    }
}

在这里插入图片描述

倒置直角三角形

****
***
**
*
外层i内层 j
04
13
22
31

i与j之间的关系:i+j=4 j=4-i

package com;

public class two {
    public static void main(String[] args) {
        for (int i = 0; i < 4; i++) {
            for (int j = 0; j < 4-i; j++) {
                System.out.print("*");
            }
            System.out.println();
        }
    }
}

在这里插入图片描述

等腰直角三角形

   *
  ***
 *****
*******
外层i内层 j内层(空格)k
013
132
251
370

i与j的关系:i=2*i+1
i与k的关系:i+k=3 k=3-i

package com;

public class two {
    public static void main(String[] args) {
        for (int i = 0; i < 4; i++) {
            for (int k = 0; k < 4-i; k++) {
                System.out.print(" ");
            }
          for(int j=0;j<2*i+1;j++){
              System.out.print("*");
          }
            System.out.println();
        }

    }
}

在这里插入图片描述

菱形

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

参考等腰三角形+倒置

package com;

public class two {
    public static void main(String[] args) {
        for (int i = 0; i < 4; i++) {
            for (int k = 0; k < 4-i; k++) {
                System.out.print(" ");
            }
          for(int j=0;j<2*i+1;j++){
              System.out.print("*");
          }
            System.out.println();
        }
        for (int i = 3; i >=0; i--) {
            for (int k = 0; k < 4-i; k++) {
                System.out.print(" ");
            }
            for(int j=0;j<2*i+1;j++){
                System.out.print("*");
            }
            System.out.println();
        }
    }
}

在这里插入图片描述

空心菱形

package com;

public class two {
    public static void main(String[] args) {
        for (int i = 0; i < 4; i++) {
            for (int k = 0; k < 4-i; k++) {
                System.out.print(" ");
            }
            for(int j=0;j<2*i+1;j++){
                if(j==0||j==2*i){
                    System.out.print("*");
                }else {
                    System.out.print(" ");
                }
            }
            System.out.println();
        }
        for (int i = 3; i >=0; i--) {
            for (int k = 0; k < 4-i; k++) {
                System.out.print(" ");
            }
            for(int j=0;j<2*i+1;j++){
                if(j==0||j==2*i){
                    System.out.print("*");
                }else {
                    System.out.print(" ");
                }
            }
            System.out.println();
        }
    }
}

在这里插入图片描述

九九乘法表

外层i内层 j
01
12
23
34
package com;

public class two {
    public static void main(String[] args) {
        for(int i=1;i<=9;i++){
            for(int j=1;j<i+1;j++){
                System.out.print(i+"*"+j+"="+(i*j)+"  ");
            }
            System.out.println();
        }
    }
}

在这里插入图片描述

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值