在路上

 找回密码
 立即注册
在路上 站点首页 学习 查看内容

二重循环解题思路第二部分-颜群

2017-2-9 13:05| 发布者: zhangjf| 查看: 690| 评论: 0

摘要: 即在打印“实心菱形”的“*”时,只需要把每一行“*”的开头第一个“*”和结尾最后一个“*”打印出来,每行中间部分的“*”用空格替代即可。即对System.out.print(*);进行判断,伪代码如下:if (开头第一个“*” 或 ...
即在打印“实心菱形”的“*”时,只需要把每一行“*”的开头第一个“*”和结尾最后一个“*”打印出来,每行中间部分的“*”用空格替代即可。即对System.out.print("*");进行判断,伪代码如下:
if (开头第一个*” 或 结尾最后一个“*) {
                                        System.out.print("*");
                                } else {//即中间部分打印空格
                                        System.out.print(" ");
                                }
完整代码如下:
        public static void main(String[] args) throws Exception {
                int rows = 5;
                // 正等腰三角形
                for (int i = 0; i < rows; i++) {
                        for (int j = 0; j < rows - i - 1; j++) {
                                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 = rows - 1; i >= 0; i--) {
                for (int i = rows - 2; i >= 0; i--) {// “倒等腰三角形的第0行(即rows-1)不用打,直接从第1(rows-2)开始打印
                        for (int j = 0; j < rows - i - 1; j++) {
                                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();// 每行的空格和”*”打印完后,需要换行
                }
        }
运行结果:

最新评论

小黑屋|在路上 ( 蜀ICP备15035742号-1 

;

GMT+8, 2025-7-9 20:17

Copyright 2015-2025 djqfx

返回顶部