Java基础_循环嵌套的应用

打印直角三角形

外层循环是用来控制打印的总行数

内层循环使用来控制打印每一行上的星号数量

1 * 2 - 1
2 * 2 - 1
3 * 2 - 1
4 * 2 - 1
5 * 2 - 1
    for (int i = 1; i <= 5; i++) {// 控制总行数
    	for (int j = 1; j <= 2 * i - 1; j++) {
    		System.out.print("*");
    	}
    	System.out.println();
    }

打印等腰三角形

外层循环是用来控制打印的总行数 

经过观察 每一行上都有空格符

line1	4空格	       1个星号
line2	3空格          3个星号	
line3	2空格          5个星号	
line4	1空格          7个星号	
line5	0空格          9个星号	

每行的空格数量 = 总行数 - 当前行号
    int total = 5;
    for (int x = 1; x <= total; x++) {// 外层循环控制总行数
    	for (int y = 1; y <= total - x; y++) {
    		System.out.print(" ");// 控制每一行上空格的数量
    	}
    	for (int z = 1; z <= 2 * x - 1; z++) {
    		System.out.print("*");// 控制每一行上星号的数量
    	}
    	System.out.println();
    }

打印菱形

一共四行

line1	1空格	7个星号   	8 - 1
line2	2空格	5个星号  	8 - 3
line1	3空格	3个星号  	8 - 5
line1	4空格	1个星号  	8 - 7

每行的空格数量 = 当前行号

每行的星号数量 = 总行数2 - (2当前行号 - 1)
    int total = 5;
    for (int x = 1; x <= total; x++) {// 外层循环控制总行数
    	for (int y = 1; y <= total - x; y++) {
    		System.out.print(" ");// 控制每一行上空格的数量
    	}
    	for (int z = 1; z <= 2 * x - 1; z++) {
    		System.out.print("*");// 控制每一行上星号的数量
    	}
    	System.out.println();
    }
    
    for (int i = 1; i <= total - 1; i++) {
    	for (int j = 1; j <= i; j++) {
    		System.out.print(" ");
    	}
    	for (int k = 1; k <= ((total - 1) * 2) - (2 * i - 1); k++) {
    		System.out.print("*");
    	}
    	System.out.println();
    }

打印空心菱形

    int total = 5;
    for (int x = 1; x <= total; x++) {// 外层循环控制总行数
    	for (int y = 1; y <= total - x; y++) {
    		System.out.print(" ");// 控制每一行上空格的数量
    	}
    	for (int z = 1; z <= 2 * x - 1; z++) {
    		if (z == 1 || z == 2 * x - 1) {
    			System.out.print("*");// 控制每一行上星号的数量
    		} else {
    			System.out.print(" ");// 控制每一行上空格的数量
    		}
    	}
    	System.out.println();
    }
    for (int i = 1; i <= total - 1; i++) {
    	for (int j = 1; j <= i; j++) {
    		System.out.print(" ");
    	}
    	for (int k = 1; k <= ((total - 1) * 2) - (2 * i - 1); k++) {
    		if (k == 1 || k == ((total - 1) * 2) - (2 * i - 1)) {
    			System.out.print("*");
    		} else {
    			System.out.print(" ");
    		}
    	}
    	System.out.println();
    }

打印九九乘法表

    for(int x=1; x<=9; x++) {
    	for(int y=1; y<=x; y++) {
    		System.out.print(y+"*"+x+"="+y*x+"\t");
    	}
    	System.out.println();
    }
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值