题目1:学生成绩管理:用case-in实现
从外部输入一个学习成绩,范围为0-100,
成绩大于等于90分,则输出A,
成绩大于等于80,则输出B,
成绩大于等于60,则输出C,
小于60,则输出D
#!/bin/bash
read -p "请输入你的成绩" score
if [ $score -ge 0 -a $score -le 100 ]
then
score=$((score/10))
case $score in
9|10)
echo A
;;
8)
echo B
;;
6|7)
echo C
;;
*)
echo D
;;
esac
else
echo 成绩有误,请重新输入
fi
运行结果:
题目2:实现四则运算,终端输入4+2,得到结果为6.4*2,得到结果为8.…
#!/bin/bash
read -p "请输入第一个数>>>" a
read -p "请输入运算符+-*/>>>" b
read -p "请输入第二给数>>>" c
case $b in
+)
echo $(expr $a + $c)
;;
-)
echo $(expr $a - $c)
;;
/)
echo $(expr $a / $c)
;;
*)
echo $(expr $a \* $c)
;;
esac
运行结果:
题目3:从终端输入一串字符,判断字符a的个数。提示:结合字符串截取命令,一次截取一个判断是否等于a:
#!/bin/bash
read -p "请输入字符串>>>" a
count=0
for ((i=0; i<${#a}; i++))
do
if [ ${a:$i:1} == a ]
then
b=$(( count = count +1))
fi
done
echo a有$b个
运行结果:
题目4:打印99乘法表
1X1=1
2X1=2 2X2=4
3X1=3 3X2=6 3X3=9
#!/bin/bash
for ((i=1;i<=9; i++))
do
for ((j=1; j<=i; j++))
do
a=$i"*"$j
((b=$i\*$j))
echo -n "$d" $a=$b
done
echo ""
done
运行结果: