.编写一个shell程序,此程序的功能:随机生成一个1-100的数(答案)让用户猜,如果用户猜的数大于答案,则提示大了,如果用户猜的数小于答案,则提示小了。当用户猜对时提示:猜对了。
提示:1. $RANDOM % 100 + 1 可以生成1-100的随机数
2. Read可以接收用户输入
#!/bin/bash
# 猜数字
echo "我会随机生成一个1-100之内的数,你来猜,我会告诉你你猜的数是大了还是小了。"
answer=`expr $RANDOM % 100 + 1`
read guess
while [ $answer -ne $guess ]
do
if [ $guess -gt $answer ]
then
echo "大了,重猜。"
elif [ $guess -lt $answer ]
then
echo "小了,重猜。"
else
break
fi
read guess
done
echo "恭喜你,猜对了。"

解决方案 »

  1.   


    没什么问题啊 我把答案打出来了,要不然太难猜了#!/bin/bash
    # 猜数字
    echo "我会随机生成一个1-100之内的数,你来猜,我会告诉你你猜的数是大了还是小了。"
    answer=`expr $RANDOM % 100 + 1`
    echo $answer
    read guess
    while [ $answer -ne $guess ]
    do
    if [ $guess -gt $answer ]
    then
    echo "大了,重猜。"
    elif [ $guess -lt $answer ]
    then
    echo "小了,重猜。"
    else
    continue
    fi
    read guess
    done
    echo "恭喜你,猜对了。"read -p "Press any key to continue." var
      

  2.   

    #!/bin/bash
    # 猜数字
    echo "我会随机生成一个1-100之内的数,你来猜,我会告诉你你猜的数是大了还是小了。"
    answer=`expr $RANDOM % 100 + 1`
    read guess
    while [ $answer -ne $guess ]
    do
    if [ $guess -gt $answer ]
    then
    echo "大了,重猜。"
    elif [ $guess -lt $answer ]
    then
    echo "小了,重猜。"
    else
    break
    fi
    read guess
    done
    echo "恭喜你,猜对了。"