最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

shell腳本實(shí)現(xiàn)猜數(shù)游戲

 更新時(shí)間:2020年04月21日 16:18:16   作者:p_小王  
這篇文章主要為大家詳細(xì)介紹了shell腳本實(shí)現(xiàn)猜數(shù)游戲,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下

用shell腳本寫一個(gè)猜數(shù)游戲

最近用shell寫的一個(gè)猜數(shù)游戲,包括4個(gè)不同難度,腳本如下:

#作者:p_小王

echo '歡迎來到猜數(shù)游戲!'
while true
do
 read -p '開始/退出(y/n):' x #提示用戶輸入
 if [ -z $x ] #判斷用戶輸入為空
 then
 echo '不能為空' #提示
 echo ''
 continue
 elif [ $x = y ] #判斷用戶輸入‘y'
 then
 echo ''
 echo '游戲即將開始'
 echo ''
 while true
 do
 sleep 1s #延遲1s
 echo '請(qǐng)選擇難度' #難度選擇
   echo ' 1.簡單'
   echo ' 2.一般'
  echo ' 3.困難'
 echo ' 4.地獄'
 echo ' 5.返回'
 echo ''
   read -p '請(qǐng)輸入對(duì)應(yīng)序號(hào):' y #提示用戶輸入
 if [ -z $y ] #判斷用戶輸入為空
 then
 echo '不能為空' #提示
 echo ''
 continue
 elif [ $y = 1 ] #判斷用戶輸入‘1'簡單
 then 
 while true
 do
  num=$[RANDOM%100+1] #隨機(jī)生成100以內(nèi)的數(shù)
  echo '猜一個(gè)1-100的數(shù)'
  n=0 #定義變量
  while true
  do
  read -p '請(qǐng)輸入:' a #提示用戶輸入
  let n++ #計(jì)次數(shù)
  if [ -z $a ] #判斷用戶輸入為空
  then
  echo '輸入不能為空!' #提示
  continue
  elif [ -n "`echo $a | sed 's#[0-9]##g'`" ] #判斷用戶輸入非數(shù)字
  then
  echo '請(qǐng)輸入1-100之間的數(shù)!' #提示
  continue
  elif [ $a -lt 1 ] || [ $a -gt 100 ] #判斷用戶輸入的數(shù)在1-100之間
  then
  echo '請(qǐng)輸入1-100之間的數(shù)!' #提示
  continue
  elif [ $a -gt $num ] #判斷用戶輸入的數(shù)大于隨機(jī)生成的數(shù)
  then
  echo '猜大了,再猜!' #提示
  continue
  elif [ $a -lt $num ] #判斷用戶輸入的數(shù)小于隨機(jī)生成的數(shù)
  then
  echo '猜小了,再猜!' #提示
  continue
  else
  echo '恭喜你猜對(duì)了,正確數(shù)字是'$num #提示用戶猜對(duì)了
  echo '猜了' $n '次' #顯示猜的次數(shù)
  echo ''
  sleep 1s #延遲1s
  echo '是否再來一局?' #提示是否再玩
  while true
  do
  read -p 'y/n:' i #提示用戶輸入
  if [ -z $i ] #判斷用戶輸入為空
  then
   echo '不能為空' #提示
   echo ''
   continue
    elif [ $i = y ] #判斷用戶輸入‘y'
  then
   break 2
  elif [ $i = n ] #判斷用戶輸入‘n'
  then
   break 3
  else
   echo '輸入有誤' #提示
   echo ''
   continue
  fi
  done
  fi
  done
 done

 elif [ $y = 2 ] #判斷用戶輸入‘2'一般
 then
 while true
 do
  num=$[RANDOM%1000+1] #隨機(jī)生成1000以內(nèi)的數(shù)
  echo '猜一個(gè)1-1000的數(shù)' #提示
  n=0 #定義變量
  while true
  do
  read -p '請(qǐng)輸入:' a #提示用戶輸入
  let n++ #記次數(shù)
  if [ -z $a ] #判斷用戶輸入
  then
  echo '輸入不能為空!' #提示
  continue
  elif [ -n "`echo $a | sed 's#[0-9]##g'`" ] #判斷用戶輸入非數(shù)字
  then
  echo '請(qǐng)輸入1-1000之間的數(shù)!' #提示
  continue
  elif [ $a -lt 1 ] || [ $a -gt 1000 ] #判斷用戶輸入的在1-1000之間
  then
  echo '請(qǐng)輸入1-1000之間的數(shù)!' #提示
  continue
  elif [ $a -gt $num ]
  then
  echo '猜大了,再猜!' #提示
  continue
  elif [ $a -lt $num ]
  then
  echo '猜小了,再猜!' #提示
  continue
  else
  echo '恭喜你猜對(duì)了,正確數(shù)字是'$num #提示用戶猜對(duì)了
  echo '猜了' $n '次' #顯示猜的次數(shù)
  echo ''
  sleep 1s #延遲1s
  echo '是否再來一局?' #提示是否繼續(xù)玩
  while true
  do
  read -p 'y/n:' i #提示用戶輸入
  if [ -z $i ] #判斷用戶輸入為空
  then
   echo '不能為空' #提示
   echo ''
   continue
    elif [ $i = y ] #判斷用戶輸入‘y'
  then
   break 2
  elif [ $i = n ] #判斷用戶輸入‘n'
  then
   break 3
  else
   echo '輸入有誤' #提示
   echo ''
   continue
  fi
  done
  fi
  done
 done

 elif [ $y = 3 ] #判斷用戶輸入‘3'困難
 then
 while true
 do
  num=$[RANDOM%10000+1] #隨機(jī)生成10000以內(nèi)的數(shù)
  echo '猜一個(gè)1-10000的數(shù)' #提示
  n=0 #定義變量
  while true
  do
  read -p '請(qǐng)輸入:' a #提示用戶輸入
  let n++ #記次數(shù)
  if [ -z $a ] #判斷用戶輸入為空
  then
  echo '輸入不能為空!' #提示
  continue
  elif [ -n "`echo $a | sed 's#[0-9]##g'`" ] #判斷用戶輸入非數(shù)字
  then
  echo '請(qǐng)輸入1-10000之間的數(shù)!' #提示
  continue
  elif [ $a -lt 1 ] || [ $a -gt 10000 ] #判斷用戶輸入是否在1-10000之間
  then
  echo '請(qǐng)輸入1-10000之間的數(shù)!' #提示
  continue
  elif [ $a -gt $num ] #判斷輸入的數(shù)大于隨機(jī)生成數(shù)
  then
  echo '猜大了,再猜!' #提示
  continue
  elif [ $a -lt $num ] #判斷輸入的數(shù)小于隨機(jī)生成數(shù)
  then
  echo '猜小了,再猜!' #提示
  continue
  else
  echo '恭喜你猜對(duì)了,正確數(shù)字是'$num #提示用戶猜對(duì)了
  echo '猜了' $n '次' #提示
  echo ''
  sleep 1s #延遲1s
  echo '是否再來一局?' #提示是否繼續(xù)玩
  while true
  do
  read -p 'y/n:' i #提示用戶輸入
  if [ -z $i ] #判斷用戶輸入為空
  then
   echo '不能為空' #提示
   echo ''
   continue
    elif [ $i = y ] #判斷用戶輸入‘y'
  then
   break 2
  elif [ $i = n ] #判斷用戶輸入‘n'
  then
   break 3
  else
   echo '輸入有誤' #提示
   echo ''
   continue
  fi
  done
  fi
  done
 done

 elif [ $y = 4 ] #判斷用戶輸入‘4'地獄
 then
 while true
 do
  num=$[RANDOM%100000+1] #隨機(jī)生成100000以內(nèi)的數(shù)
  echo '猜一個(gè)1-100000的數(shù)' #提示
  n=0 #定義變量
  while true
  do
  read -p '請(qǐng)輸入:' a #提示用戶輸入
  let n++ #記次數(shù)
  if [ -z $a ] #判斷用戶輸入為空
  then
  echo '輸入不能為空!' #提示
  continue
  elif [ -n "`echo $a | sed 's#[0-9]##g'`" ] #判斷用戶輸入非數(shù)字
  then
  echo '請(qǐng)輸入1-100000之間的數(shù)!' #提示
  continue
  elif [ $a -lt 1 ] || [ $a -gt 100000 ] #判斷用戶輸入1-100000之間
  then
  echo '請(qǐng)輸入1-100000之間的數(shù)!' #提示
  continue
  elif [ $a -gt $num ] #判斷輸入的數(shù)大于隨機(jī)生成數(shù)
  then
  echo '猜大了,再猜!' #提示
  continue
  elif [ $a -lt $num ] #判斷輸入的數(shù)小于隨機(jī)生成數(shù)
  then
  echo '猜小了,再猜!' #提示
  continue
  else
  echo '恭喜你猜對(duì)了,正確數(shù)字是'$num #提示用戶猜對(duì)了
  echo '猜了' $n '次' #顯示猜的次數(shù)
  echo ''
  sleep 1s #延遲1s
  echo '是否再來一局?' #提示是否繼續(xù)玩
  while true
  do
  read -p 'y/n:' i #提示用戶輸入
  if [ -z $i ] #判斷用戶輸入為空
  then
   echo '不能為空' #提示
    echo ''
   continue 
    elif [ $i = y ] #判斷用戶輸入‘y'
  then
   break 2
  elif [ $i = n ] #判斷用戶輸入‘n'
  then
   break 3
  else
   echo '輸入有誤' #提示
   echo ''
   continue
  fi
  done
  fi
  done
 done

 elif [ $y = 5 ] #判斷用戶選擇返回
 then
 echo ''
 break #返回
 else #判斷用戶輸入其他
 echo '輸入有誤' #提示
 echo ''
 continue
 fi 
 done
 elif [ $x = n ] #判斷用戶輸入‘n'退出
 then
 echo '游戲即將退出' #提示
 echo ''
 sleep 1s
 echo '退出成功!' #提示
 echo ''
 exit 0 #結(jié)束腳本
 else #判斷用戶輸入其他
 echo '輸入有誤' #提示
 echo ''
 continue
 fi
done

備注:本人已經(jīng)測(cè)試過了,未測(cè)出bug

以上就是本文的全部內(nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

  • Shell編程之變量的高級(jí)用法詳解

    Shell編程之變量的高級(jí)用法詳解

    這篇文章主要介紹了Shell編程之變量的高級(jí)用法詳解,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2021-05-05
  • Shell腳本用for循環(huán)遍歷參數(shù)的方法技巧

    Shell腳本用for循環(huán)遍歷參數(shù)的方法技巧

    今天小編就為大家分享一篇關(guān)于Shell腳本用for循環(huán)遍歷參數(shù)的方法技巧,小編覺得內(nèi)容挺不錯(cuò)的,現(xiàn)在分享給大家,具有很好的參考價(jià)值,需要的朋友一起跟隨小編來看看吧
    2019-03-03
  • 阿里云云服務(wù)器Linux系統(tǒng)更新yum源Shell腳本

    阿里云云服務(wù)器Linux系統(tǒng)更新yum源Shell腳本

    這篇文章主要介紹了阿里云云服務(wù)器Linux系統(tǒng)更新yum源Shell腳本,阿里云自建了一個(gè)包含大多數(shù)系統(tǒng)更新的本地yum源,速度快又好用,需要的朋友可以參考下
    2014-09-09
  • linux shell txt轉(zhuǎn)換成html的實(shí)現(xiàn)代碼

    linux shell txt轉(zhuǎn)換成html的實(shí)現(xiàn)代碼

    這篇文章主要介紹了linux shell txt轉(zhuǎn)換成html的實(shí)現(xiàn)代碼,需要的朋友可以參考下
    2016-11-11
  • 一波實(shí)用的Bash Shell整理

    一波實(shí)用的Bash Shell整理

    這篇文章主要介紹了一波實(shí)用的Bash Shell整理,適用于Ubuntu等Debian系的Linux系統(tǒng),需要的朋友可以參考下
    2015-06-06
  • shell腳本實(shí)現(xiàn)統(tǒng)計(jì)文件大小、批量創(chuàng)建用戶的示例

    shell腳本實(shí)現(xiàn)統(tǒng)計(jì)文件大小、批量創(chuàng)建用戶的示例

    這篇文章主要介紹了shell腳本實(shí)現(xiàn)統(tǒng)計(jì)文件大小、批量創(chuàng)建用戶的示例,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-03-03
  • Linux shell中的printf的詳細(xì)用法

    Linux shell中的printf的詳細(xì)用法

    這篇文章主要介紹了Linux shell中的printf的詳細(xì)用法的相關(guān)資料,希望能通過本文能幫助到大家,需要的朋友可以參考下
    2017-09-09
  • 積累linux常用命令大全

    積累linux常用命令大全

    Linux命令是對(duì)Linux系統(tǒng)進(jìn)行管理的命令。對(duì)于Linux系統(tǒng)來說,無論是中央處理器、內(nèi)存、驅(qū)動(dòng)、鍵盤、鼠標(biāo),還是用戶等都是文件,Linux命令是它正常運(yùn)行的核心,這篇文章主要總結(jié)了linux常用命令,需要的朋友可以參考下
    2015-08-08
  • shell腳本實(shí)現(xiàn)多彩進(jìn)度條

    shell腳本實(shí)現(xiàn)多彩進(jìn)度條

    這篇文章主要介紹了shell腳本實(shí)現(xiàn)多彩進(jìn)度條的相關(guān)資料,需要的朋友可以參考下
    2017-07-07
  • Webshell基礎(chǔ)知識(shí)深入講解

    Webshell基礎(chǔ)知識(shí)深入講解

    這篇文章主要介紹了Webshell基礎(chǔ)知識(shí)深入講解,有對(duì)于shell和對(duì)于服務(wù)器感興趣的同學(xué)可以跟著小編一起來研究下
    2021-03-03

最新評(píng)論

华阴市| 梅州市| 朝阳县| 临邑县| 玛沁县| 卢湾区| 鄂伦春自治旗| 渭源县| 蕲春县| 西峡县| 宜章县| 从江县| 汕头市| 毕节市| 瑞金市| 翁牛特旗| 分宜县| 达拉特旗| 紫阳县| 织金县| 邢台市| 越西县| 思南县| 城步| 通江县| 策勒县| 定西市| 龙里县| 淳安县| 贺州市| 洮南市| 渭南市| 贵溪市| 莱西市| 湘潭县| 新邵县| 渑池县| 光山县| 句容市| 垣曲县| 秦安县|