int rows = 5; //行数
for (int j = rows; j >= 1; j--) {//控制打印的行数
for (int i = 1; i <= rows - j;i++) {//控制每行开始每行之前的空格
System.out.print(" ");
}
for (int i = 1; i <= j * 2 - 1 ; i++) {//控制每行打印的个数(初始设定每行的个数等于(2*行数-1))
if(i == 1 || i == j * 2 - 1 ) {//打印每行的第一个数和最后一个数
System.out.print("*");
}else {
if (j == rows) {//最后一行全部打印
System.out.print("*");
}else {
System.out.print(" ");//中间位置打印空格
}
}
}
System.out.println();
}
shell脚本
#!/bin/bash
for ((i=1;i<=4;i++))
do
for ((m=4-i;m>=1;m--))
do
echo -n " "
done
for ((k=1;k<=2*i-1;k++))
do
number=$((2*i-1))
if [ $k -eq 1 -o $k -eq $number -o $i -eq 4 ];then
echo -n "*"
else
echo -n " "
fi
done
echo
done