打印如下圖形:
解題思路:
由簡入難!
嘗試一:
for(int i = 1;i < 6;i++) {
for(int j = 1;j < 6;j++) {
System.out.print(" * ");
}
System.out.println();
}
結果:
現在我們得到一個正方形。如果沿着對角線,將左上角的星星換成空白,不就是我們最終要得到的結果嗎?所以有一點可以肯定,外層循環的條件都與 i 有關。
總共5次循環。當 i = 1 時,空白打印 4次,當j = 5,4,3,2 打印空白。 星星打印 1 次。 當k = 1 打印星星。
當 i = 2 時,空白打印 3次,當j = 5,4,3 打印空白。 星星打印 2 次。 當k = 1,2 打印星星。
當 i = 3 時,空白打印 2次,當j = 5,4 打印空白。 星星打印 3 次。 當k = 1,2,3打印星星
。。。。
答題:
for(int i = 1;i < 6;i++) {
for(int j = 6;j > i;j--) {
System.out.print(" ");//有三個空格,佔三位
}
for(int k = 1;k <= i;k++) {
System.out.print(" * ");//兩個空格,一個星星,佔三位.打印星星要與打印空白佔位一樣,要不就會變形.
}
System.out.println();
}
方法二:
for(int i = 1;i < 6;i++) {
for(int j = 6;j > 0;j--) {
if(j <= i) {
System.out.print("*");
}else {
System.out.print(" ");
}
}
System.out.println();
}
顯示結果: