【问题标题】:i have a question for a bash script homework question我有一个关于 bash 脚本作业问题的问题
【发布时间】:2019-11-13 09:08:18
【问题描述】:

我有一个家庭作业问题。创建一个执行以下操作的脚本。

  1. 提示用户输入他们的姓名并将其保存到名为 myname 的变量中。让脚本回复用户,并表示欢迎(请务必在回复中包含他们的姓名。

  2. 提示用户是否想玩游戏。使用 while 语句。

注意:使用值 1 或 0 作为输入,因为 1=yes 和 0=no。如果使用字符而不是数字值,则 while 循环需要具有不同的语法。编写此代码来测试您的 while 语句是否正确。

  1. 让用户玩比游戏更大、比游戏更少的游戏。让他们输入 1-99 的 2 个数字。让程序确定第一个数字是否大于第二个数字或相反。

使用 if, then, else 语句。

提示用户是否想再次玩游戏。 (在提示中包括他们的名字) 注意:这是过程 2 中 while 语句的一部分。

如果用户不想再玩,请感谢用户(以他们的名字)。

我将如何在再次播放提示中包含玩家姓名,如果用户不想再次播放,我将如何通过他们的姓名感谢用户?

这是我目前所拥有的:

#!/bin/bash
#Session11-Lab

read -p "Enter Your Name: "  myname
echo "Welcome $myname!"

game=1

while [ $game -eq 1 ]     
do
  echo $game
  read -p "Would you like to play a game?" game

  read -p "Enter a number between 1 and 99:" num1
  read -p "enter another number between 1 and 99:" num2

  if (($num1 > $num2)) ; then
        echo "the first number is larger"
  else
        echo "the second number is larger"
  fi
  read -p "play again (1 or 0)" game

  done

exit 0

【问题讨论】:

标签: linux bash


【解决方案1】:

如何在再次播放提示中包含玩家姓名? ...

您可以像这样在 bash 字符串中插入变量:

read -p "$myname, play again? (1 or 0)" game

...如果用户不想再玩,我该如何直呼用户的名字?

如果用户输入0,则在while循环结束之前添加这个以中断并退出游戏:

[ $game == 0 ] && break

在while循环结束后:

echo "Thanks for playing $myname!"

【讨论】:

    猜你喜欢
    • 2011-03-18
    • 2016-11-16
    • 2020-03-19
    • 1970-01-01
    • 1970-01-01
    • 2018-10-26
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多