技巧:
首先找找到规律,先画上面的三角形:
一共有四行
第一行的前面有三个空格,一个*
第二行的前面是两个空格,三个 *
第三行的前面是一个空格,五个*
第四行的前面是零个空格,七个*
所以得出结论空格数是总行数-行数,*的个数是2倍的行数-1
Scanner input = new Scanner(System.in);//从键盘录入
System.out.println("请输入行数:");//此行数为正三角形的行数
int rows = input.nextInt();//获取键盘录入的行数
//用输入打行数打印一个三角形
for (int i = 1; i <=rows; i++) {//定义i=1从第一行开始画,行数++
for (int j = 1; j < =(rows-i) ; j++) {//画空格的个数等于rows-i
System.out.print(" ");
}
for (int j = 1; j <= (2*i-1); j++) {//画*的个数等于2*i-1
System.out.print("*");
}
System.out.println();//输出换行
}
画完正的三角形,还缺倒着的三角形
//打印以最后一行为轴的对称三角形
for (int i = (rows-1); i >0; i--) {//倒三角形比正三角形少了一行,而且是行数--
for (int j = 0; j < (rows-i) ; j++) {//画空格的个数等于rows-i
System.out.print(" ");
}
for (int j = 0; j < (2*i-1); j++) {//画*的个数等于2*i-1
System.out.print("*");
}
System.out.println();
}
结果:
小白又来更新啦,自我感觉逻辑感还是可以的,加油!!