shell编程:成绩输入0-100,使用if语句转为不及格,及格,中等,良好,优秀,及<0或>100时提示输入不正确。
时间: 2023-12-09 10:02:37 浏览: 161
if-then-else语句-shell编程入门
好的,以下是一个简单的 Shell 脚本,可以实现你的需求:
```bash
#!/bin/bash
read -p "请输入成绩(0-100):" score
if [ $score -lt 0 ] || [ $score -gt 100 ]; then
echo "输入不正确"
elif [ $score -lt 60 ]; then
echo "不及格"
elif [ $score -lt 70 ]; then
echo "及格"
elif [ $score -lt 80 ]; then
echo "中等"
elif [ $score -lt 90 ]; then
echo "良好"
else
echo "优秀"
fi
```
解释一下脚本的逻辑:
首先使用 `read` 命令获取用户输入的成绩,保存在变量 `score` 中。
然后使用 `if` 语句判断用户输入的成绩是否符合要求。如果成绩小于 0 或大于 100,则输出提示信息;否则根据成绩的大小判断成绩的等级,并输出相应的提示信息。
需要注意的是,在 Shell 脚本中,比较运算符 `<` 和 `>` 只能用于比较整数,不能用于比较浮点数。如果需要比较浮点数,可以使用 `bc` 命令进行计算。
阅读全文