方案一
#!/bin/bash
read -p "请输入菱形大小:" snum
for ((i=0-snum+1;i<snum;i++))
do
if ((i>=0));
then
##正数取原值
num=$i
else
##负数取绝对值
num=${i:1}
fi
for ((j=num;j>0;j--))
do
##打印空格
echo -n " "
done
for ((k=1;k<=2*(snum-num)-1;k++))
do
##打印“*”
echo -n "*"
done
echo
done
方案二
#!/bin/bash
read -p "请输入菱形大小:" num
##上面的循环体打印向上的等腰三角形
for ((i=1;i<=num;i++))
do
for ((j=num-1;j>=i;j--))
do
##打印空格
echo -n " "
done
for ((k=1;k<=2*i-1;k++))
do
##打印“*”号
echo -n "*"
done
echo
done
##下面的循环体打印向下的等腰三角形
for ((i=num-1;i>0;i--))
do
for ((j=1;j<num-i+1;j++))
do
##打印空格
echo -n " "
done
for ((k=2*i-1;k>0;k--))
do
##打印“*”号
echo -n "*"
done
echo
done