编写一个Shell脚本,根据键盘可以循环输入学生成绩(百分制),并显示对应的成绩标准(及格和不及格),按Q键退出,按其他键重新输入。
时间: 2024-05-04 21:21:01 浏览: 29
可以尝试以下脚本:
```bash
#!/bin/bash
while true; do
read -p "请输入学生成绩(按Q键退出):" score
if [[ $score == "Q" ]]; then
break
elif (( $score >= 60 )); then
echo "成绩:$score,及格"
else
echo "成绩:$score,不及格"
fi
done
```
脚本通过无限循环 `while true` ,读取用户输入的学生成绩。如果输入的是大写字母 Q ,则退出循环;否则,判断成绩是否大于等于 60 ,输出对应的成绩标准。
相关问题
编写一个shell脚本,根据键盘可以循环输入学生成绩(百分制),并显示对应的成绩标准(及格和不及格),按Q键退出,按其他键提示重新输入。
好的,以下是脚本的代码:
```shell
#!/bin/bash
while true
do
echo -n "请输入学生成绩(百分制):"
read score
if [ "$score" == "Q" ] || [ "$score" == "q" ]
then
exit 0
elif [ $score -ge 60 ]
then
echo "成绩为及格!"
else
echo "成绩为不及格!"
fi
done
```
脚本的逻辑很简单,就是不断循环读取用户输入的成绩,如果输入的是 Q 或者 q,则退出脚本。否则判断成绩是否及格(即大于等于60),并输出对应的标准。每次循环结束后,会再次提示用户输入成绩。
希望这个脚本能够满足您的需求。
编写一个shell脚本,通过键盘可以循环输入学生成绩,并显示对应的成绩是否及格,按q键退出脚本
好的,以下是一个简单的实现:
```bash
#!/bin/bash
while true; do
read -p "请输入学生成绩(按q键退出):" score
# 判断是否输入了q键
if [[ $score == "q" ]]; then
echo "退出程序"
exit 0
fi
# 判断成绩是否及格
if (( $(echo "$score >= 60" | bc -l) )); then
echo "恭喜,成绩及格!"
else
echo "很遗憾,成绩不及格!"
fi
done
```
这个脚本使用了一个 `while` 循环,每次循环通过 `read` 命令从键盘读取输入的学生成绩,如果输入的是 `q` 键,则退出程序。然后使用 `bc` 命令计算输入的成绩是否及格,并输出对应的信息。