生命太短暂,所以不能空手走过,你必须对某样东西倾注你的深情 —— 朱棣文
西西里岛
题目:(测试多重循环练习)输出空心金字塔过程
import java.util.Scanner;
public class Text {
public static void main(String[] args) {
/**
* 打印一个空心三角形
*
* 思路分析
* 化繁为简
* 1. 首先打印出一个正方形
*****
*****
*****
* 2. 打印半个金字塔
*
**
***
****
******
* 3. 打印整个金字塔
* 分解)先看每一层有多少个星星,输出
* )再看有多少个空格,输出
* (2*层数-1) (最大层数-当前层数)
* 第1层 有1个星星 星星个数 = 2*1-1 空格有4个 5-1
*** 第2层 有3个星星 星星个数 = 2*2-1 空格有3个 5-2
***** 第3层 有5个星星 星星个数 = 2*3-1 空格有2个 5-3
******* 第4层 有7个星星 星星个数 = 2*4-1 空格有1个 5-4
********* 第5层 有9个星星 星星个数 = 2*5-1 空格有0个 5-5
* 4. 打印空心的金字塔
* 第1层 有1个星星 第一个位置是星星,最后一个位置也是星星
* * 第2层 有2个星星
* * 第3层 有2个星星
* * 第4层 有2个星星
********* 第5层 (全部输出)
*/
for (int i = 1; i <= 5; i++) {// i = 层数
for (int j = 0; j <=5-i ; j++) {
System.out.print(" ");//输出左边空格
}
for (int j = 1; j <= 2*i-1; j++) {// j = 星星的个数
if (j==1 || j== 2*i-1 || i==5) {//(第一个位置) || (最后一个位置) || (最后一层)
System.out.print("*");
}else {
System.out.print(" ");//输出金字塔内部空格
}
}
System.out.println(" ");//换行
}
}
}
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)