嵌入式-shell脚本-2024.7.24

题目

练习1:学生成绩管理:用case-in实现

从外部输入一个学习成绩,范围为0 – 100,

成绩大于等于90分,则输出A,

成绩大于等于80,则输出B,

成绩大于等于60,则输出C,

小于60,则输出D

练习2:实现四则运算,终端输入4+2 ,得到结果为6. 4*2,得到结果为8.....

练习3:从终端输入一串字符,判断字符a的个数。提示:结合字符串截取命令,一次截取一个判断是否等于a:

练习4:打印99乘法表

1 x 1 = 1

2 x 1 = 2 2 x 2 = 4

3 x 1 = 3 3 x 2 = 6 3 x 3 = 9

……

练习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 101 ]
  then
      b=$((score/10))
      case $b in
          9|10)
              echo "A"
              ;;
          8)
              echo "B"
              ;;                                    
          [6-7])
              echo "C"
              ;;
          [0-5])
              echo "D"
              ;;
      esac
 
      else
      echo $score输入错误
  fi
 
                                                    

结果:

练习2:实现四则运算,终端输入4+2 ,得到结果为6. 4*2,得到结果为8.....

#!/bin/bash

#用case-in写四则运算
read -p "请输入需要计算的式子:" num1 ope num2

case $ope in
    "+")
        num=$(($num1+$num2))
        echo $num
        ;;
    "-")
        num=$(($num1-$num2))
        echo $num
        ;;
    "*")
        num=$(($num1*$num2))
        echo $num
        ;;
    "/")
        num=$(($num1/$num2))
        echo $num
        ;;
esac                                              
                                                  

结果:

练习3:从终端输入一串字符,判断字符a的个数。提示:结合字符串截取命令,一次截取一个判断是否等于a:

 #!/bin/bash
 
 read -p "请输入一串字符:" var
 
 j=${#var}
 i=0
 count=0
 k=0
 for ((i=0;i<j;i++))
 do
     k=${var:i:1}
     if [ "$k" = "a" ]
     then
         count=$((count+1))
     fi
     
 done
 echo "字符串中'a'的个数为:$count"
                                              
                                              
                                              

结果:

练习4:打印99乘法表

1 x 1 = 1

2 x 1 = 2 2 x 2 = 4

3 x 1 = 3 3 x 2 = 6 3 x 3 = 9

……

#!/bin/bash

i=1
j=1
for ((i=1;i<10;i++))
do
    for ((j=1;j<=i;j++))
    do
        echo -en "$j*$i= $((i*j))\t"

    done
    echo    
                                       
done
                                       

结果:

  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值