//打印金字塔,由易到难
public static void main(String[] args) {
/**
* *****
* *****
* *****
* *****
* *****
*/
for (int i = 1; i <= 5; i++) {
System.out.println("*****");
}
/**
* * 第1层 1个*
* ** 第2层 2个*
* *** 第3层 3个*
* **** 第4层 4个*
* ***** 第5层 5个*
*/
//得出当前层数 = 当前层的*数
for (int i = 1; i <= 5; i++) {//i表示层数
//控制每一层*的个数
for (int j = 1; j <= i; j++) {
System.out.print("*");
}
System.out.println();
}
//可引申出九九乘法表
for (int i = 1; i <= 9; i++) {
for (int j = 1; j <= i; j++) {
System.out.print(j + "*" + i + "=" + (i * j) + "\t");
}
System.out.println();
}
/**
* * 第1层 1个* = 2x层数-1 4个空格 = 5-1
* *** 第2层 3个* = 2x层数-1 3个空格 = 5-2
* ***** 第3层 5个* = 2x层数-1 2个空格 = 5-3
* ******* 第4层 7个* = 2x层数-1 1个空格 = 5-4
* ********* 第5层 9个* = 2x层数-1 0个空格 = 5-5
*/
//得出在每一层打印*之前要先打印空格,每一层空格数 = 总层数 - 当前层
for (int i = 1; i <= 5; i++) {//i表示层数
//在输出*之前还要输出对应空格
//对应空格 = 总层数 - 当前层
for (int k = 1; k <= 5 - i; k++) {
System.out.print(" ");
}
//控制每一层*的个数
for (int j = 1; j <= 2 * i - 1; j++) {
System.out.print("*");
}
System.out.println();
}
/**
* *
* * *
* * *
* * *
* *********
*/
for (int i = 1; i <= 5; i++) {//i表示层数
//在输出*之前还要输出对应空格
//对应空格 = 总层数 - 当前层
for (int k = 1; k <= 5 - i; k++) {
System.out.print(" ");
}
//控制每一层*的个数
for (int j = 1; j <= 2 * i - 1; j++) {
//当前层的第一个位置和最后一个位置是*
if (j ==1 || j == 2 * i -1 || i == 5) {//每一层最后一个位置 = 该层的*数
System.out.print("*");
} else {
System.out.print(" ");
}
}
System.out.println();
}
}