Chinaunix首页 | 论坛 | 博客
  • 博客访问: 54695
  • 博文数量: 51
  • 博客积分: 0
  • 博客等级: 民兵
  • 技术积分: 410
  • 用 户 组: 普通用户
  • 注册时间: 2018-08-26 01:30
文章分类

全部博文(51)

文章存档

2020年(2)

2018年(49)

我的朋友

分类: Java

2018-08-29 05:14:00

大家也许在上学的时候,都会做一道题: 打印一棵树。


比如:


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


基本编码:

public class treeDemo01 {

 /**
  * @param args
  */
 public static void main(String[] args) {
  //System.out.println("This tree demo");
  //tree body
  for(int k = 0; k < 5; k++) {
   for (int i = 4; i > k; i--) {
    System.out.print(" ");
   }
   for (int i = 0; i < k + 1; i++) {
    System.out.print("*");
   }
   for (int j = 0; j < k; j++) {
    System.out.print("*");
   }
   System.out.print("/n");
  }

//tree trunk
  for (int i = 0; i < 5; i++) {
   for (int j = 0; j < 4; j++) {
    System.out.print(" ");
   }
   for (int j = 0; j < 1; j++) {
    System.out.println("*");
   }
  }

}


编码说明: 编写这个“树”需要两部分组成,“树”的主体(tree body)和“树”的干(tree trunk)。

而编码中有只有两个字符"*"和" ",后边的就是空格。


// tree body

外层循环决定“树”的层如果是5层如上所示


//tree trunk

外层循环决定“树干”的高度如果是5行则如上所示


下一篇, 介绍对它进行改进!


阅读(277) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~