美文网首页
打印圣诞树

打印圣诞树

作者: uuhaiyang | 来源:发表于2019-12-31 14:29 被阅读0次

    打印如图所示圣诞树:

    tree.png

    分析:
    圣诞树分2部分:

    • part A
      树冠部分:共10层(行)
    int row = 10;
    

    每一层由空格字符,和星花 “*”组成的字符串
    观察:
    第一层:空格数量9,星花数量为1
    第二层:空格数量8,星花数量为3
    第三层:空格数量7,星花数量为5
    ...
    第10层:空格数量为0,星花数量为19
    其规律为第 i层:空格数量为row - i, 星花数量为 i * 2 - 1

    // 一共有多少层,外层循环就有几次
    for (int i = 1; i <= row; i++) {
                // 标记第i层
                            // 第 i 层有多少空格
                for (int j = row-i; j > 0; j--) {
                    System.out.print(" ");
                }
                // 第 i 层有多少星花
                for (int k = 1; k <= (i*2-1) ; k++) {
                    System.out.print("*");
                }
                // 一层结束换行
                System.out.println();
            }
    
    • part B
      树干部分:共2层(行)
            // 树干
            // 外层循环 2次
                // 内层循环确定空格数量
                // 空格 + *
            for (int i = 1; i <= rootNum; i++) {
                for (int j = 1; j < row; j++) {
                    System.out.print(" ");
                }
                System.out.print("*\n");
            }
    

    完成~ I am groot~

    相关文章

      网友评论

          本文标题:打印圣诞树

          本文链接:https://www.haomeiwen.com/subject/ievboctx.html