首先分析下每行打印的规律,这里直接把规律以表格的形式给出
行数 | 打印空格个数 | 打印*个数 |
1 | n-1 | 1 |
2 | n-2 | 3 |
3 | n-3 | 5 |
4 | n-4 | 7 |
. . . |
. . . |
. . . |
n | 0 | 2*n-1 |
有了以上的规律再写起来就简单很多,以下是代码:
/*
* @Author:
* @Description:打印等腰三角形
* @Date: 2019/5/23
* @Param: [n] n代表打印的行数
* @return: void
**/
public static void printTriangle(int n){
//外层控制行数
for (int i = 0; i < n; i++) {
//内层分两个循环
//第一个循环控制打印空格数量
for (int j = 0; j < (n-i); j++) {
System.out.print(" ");
}
//第二个循环控制打印*的数量
for (int k = 0; k < (2*(i+1)-1); k++) {
System.out.print("*");
}
//换行
System.out.println("");
}
}
测试结果:此处n=6
*
***
*****
*******
*********
***********