为了账号安全,请及时绑定邮箱和手机立即绑定

老师交待的作业,不用if嵌套写了个加减乘除,大神们有BUG吗?

#!/bin/bash


read -p "Please input num1:" num1

read -p "Please input num2:" num2

read -p "Please input operator:" operator


if [ -z "$num1" -o -z "$operator" -o -z "$num2" ]

        then

        echo "输入数值有空值,请重新输入"

        exit 10

fi


test1=$( echo $num1 | sed 's/[0-9]//g' )

test2=$( echo $num2 | sed 's/[0-9]//g' )


if [ -n "$test1" -o -n "$test2" ]

        then

        echo "请输入数值" 

        exit 11

fi


if [ "$operator" == '+' ]

        then

                sum=$(( $num1 + $num2 ))

elif [ "$operator" == '-' ]

        then

                diff=$(( $num1 - $num2 ))

elif [ "$operator" == '*' ]

        then

                pro=$(( $num1 * $num2 ))

elif [ "$operator" == '/' ]

        then

                quo=$(( $num1 / $num2 ))

else

        echo "请输入正确的运算符"

        exit 12

fi


echo "运算结果:$num1 $operator $num2:"$sum$diff$pro$quo


正在回答

1 回答

一、 ./if555.sh: line 22: + + + : syntax error: operand expected (error token is "+ ")

二、 运算结果:+ + +:

就是这里,有一个报错和一个技术难题。

一、报错那行的前面已经有if拦截了,怎么还会往下运行的呀?

二、第二个提示我知道是我if里的判断写错了,就是不知道如何判断前面有报错时不再显示此运算结果。

1 回复 有任何疑惑可以回复我~
#1

千与千寻千般慕 提问者

问题已经解决咯
2018-03-31 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消

老师交待的作业,不用if嵌套写了个加减乘除,大神们有BUG吗?

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信