分三个部分实现,会更简洁通俗易理解,每写完一部分先运行测试,首先从树顶开始
public class TreeTest2 {
public static void main(String[] args) {
/* 打印圣诞树:
####@@@@*
####@@@***
####@@*****
####@*******
####*********
@@@@@*******
@@@@*********
@@@***********
@@*************
@***************
*****************
@@@@@@@***
@@@@@@@***
@@@@@@@***
@@@@@@@***
*/
//第一部分
//1.树顶
for (int i = 1; i <6; i++) {//外层行数
for (int j = 0; j < 4; j++) {//内层列数
System.out.print("#");
}
//2.倒直角三角形
for (int k = 0; k < 5 - i; k++) {//内层列数
System.out.print("@");
}
//3.等腰三角形
for (int n = 0; n<i*2-1; n++) {//内层列数
System.out.print("*");
}
System.out.println();
}//运行第一部分
//第二部分
//4.中小树
for (int i = 0; i <6 ; i++) {//外层行数
for (int j = 0; j <5-i ; j++) {//内层列数
System.out.print("@");
}
for (int k = 1; k <=2*i+7; k++) {//内层列数
System.out.print("*");
}
System.out.println();
}//运行第二部分
//第三部分
//5.树干
for (int i = 0; i < 4; i++) {//外层行数
for (int j = 0; j < 7; j++) {//内层列数
System.out.print("@");
}
for (int k = 0; k <3 ; k++) {//内层列数
System.out.print("*");
}
System.out.println();
}//运行第三部分 完成
}
}
上面代码运行就是这个图 去掉println(" ")中多余的符号后运行
这样实现比较容易 不然对小白来说,一口气写出所有代码,比较难