编写一个shell脚本,实现学生成绩检测,输出一个学生成绩,显示成绩区间
时间: 2023-07-07 08:03:05 浏览: 182
以下是一个简单的 shell 脚本,用于检测学生成绩并输出成绩区间:
```shell
#!/bin/bash
# 获取学生成绩
echo "请输入学生成绩:"
read score
# 判断成绩区间并输出
if ((score < 60)); then
echo "您的成绩为 $score,不及格"
elif ((score < 70)); then
echo "您的成绩为 $score,及格"
elif ((score < 80)); then
echo "您的成绩为 $score,良好"
else
echo "您的成绩为 $score,优秀"
fi
```
使用方法:
1. 在终端中创建一个新文件,文件名为 `score.sh`,并将上面的代码复制到文件中。
2. 在终端中执行以下命令,为文件添加可执行权限:
```shell
chmod +x score.sh
```
3. 在终端中运行脚本:
```shell
./score.sh
```
4. 输入学生成绩并回车,即可看到该学生成绩所处的成绩区间。
相关问题
用shell脚本编写学生成绩管理系统
学生成绩管理系统可以使用Shell脚本编写。下面是一个简单的示例:
```shell
#!/bin/bash
# 初始化学生信息数组
students=("张三" "李四" "王五")
# 初始化学生成绩数组
scores=(80 90 85)
# 显示菜单选项
function display_menu {
echo "学生成绩管理系统"
echo "1. 显示所有学生信息"
echo "2. 添加学生信息"
echo "3. 删除学生信息"
echo "4. 修改学生成绩"
echo "5. 退出"
}
# 显示所有学生信息
function display_students {
echo "学生信息:"
for ((i=0; i<${#students[@]}; i++)); do
echo "${students[$i]}: ${scores[$i]}"
done
}
# 添加学生信息
function add_student {
read -p "请输入学生姓名: " name
read -p "请输入学生成绩: " score
students+=("$name")
scores+=("$score")
echo "添加成功!"
}
# 删除学生信息
function delete_student {
read -p "请输入要删除的学生姓名: " name
index=-1
for ((i=0; i<${#students[@]}; i++)); do
if [[ "${students[$i]}" == "$name" ]]; then
index=$i
break
fi
done
if [[ $index -ge 0 ]]; then
unset students[$index]
unset scores[$index]
students=("${students[@]}")
scores=("${scores[@]}")
echo "删除成功!"
else
echo "学生不存在!"
fi
}
# 修改学生成绩
function modify_score {
read -p "请输入要修改成绩的学生姓名: " name
index=-1
for ((i=0; i<${#students[@]}; i++)); do
if [[ "${students[$i]}" == "$name" ]]; then
index=$i
break
fi
done
if [[ $index -ge 0 ]]; then
read -p "请输入新的学生成绩: " score
scores[$index]=$score
echo "修改成功!"
else
echo "学生不存在!"
fi
}
# 主程序
while true; do
display_menu
read -p "请输入选项: " option
case $option in
1)
display_students;;
2)
add_student;;
3)
delete_student;;
4)
modify_score;;
5)
break;;
*)
echo "无效选项!";;
esac
done
```
这个脚本实现了以下功能:
- 显示所有学生信息:显示每个学生的姓名和成绩。
- 添加学生信息:允许输入新的学生姓名和成绩,并将其添加到数组中。
- 删除学生信息:根据学生姓名删除相应的学生记录。
- 修改学生成绩:根据学生姓名修改对应的成绩。
编写一个shell脚本,通过键盘输入学生成绩,并显示对应成绩是否及格,按q退出脚本
好的,下面是一个简单的Shell脚本,可以实现输入学生成绩并判断是否及格的功能:
```bash
#!/bin/bash
while true; do
read -p "请输入学生成绩(按q退出): " score
if [ "$score" = "q" ]; then
echo "退出脚本"
exit 0
fi
if [ $score -ge 60 ]; then
echo "成绩为 $score ,及格"
else
echo "成绩为 $score ,不及格"
fi
done
```
脚本中使用了一个无限循环 `while true`,不断地读取键盘输入的学生成绩。如果输入的值为 q,则退出脚本。否则,判断输入的成绩是否及格,输出对应的结果。
注意,这个脚本假设输入的成绩都是数字,并且没有做任何错误处理。在实际使用中,需要根据具体情况进行修改和完善。