红联Linux门户
Linux帮助

shell下打印菱形 求助

发布时间:2011-08-03 22:30:48来源:红联作者:lin7763438
利用shell的for循环 和if 打印出 由*号组成的菱形图状 谁会
文章评论

共有 1 条评论

  1. lvlinfeifei 于 2011-11-08 12:30:29发表:

    a() {
    k=1
    while [$k -le $B ]; do
    let k
    echo -n " "
    }
    b() {
    j=1
    while [ $j -le $C ]; do
    let j
    echo -n "*"
    done
    }
    c() {
    s=1
    while [ $s -le $h ]; do
    let s
    echo -n " "
    done
    }
    d() {
    m=1
    while [ $m -le $D ]; do
    let m
    echo -n "*"
    done
    }
    read -p "Please input the number(1-10):" nu
    i=0
    while [ $i -lt $nu ]; do
    let i
    B=`expr $nu -$i`
    C=`expr 2 * $i - 1`
    a
    b
    echo ""
    done
    nua=`expr $nu - 1`
    h=0
    while [ $h -lt $nua ]; do
    let h
    E=`expr 2 * $h - 1`
    D=`expr 2 * $nua -$E`
    c
    d
    echo ""
    done

    网上找的。。应该可以。。