一、算术运算符

**:对两个变量做幂运算  

其他:+ - * /  %       +=   -=  *=   /=   %=

 

二、运算顺序

如果没有expr或$[]更改运算顺序,则会将运算式以字符串的形式赋值

ehco 1+2;            结果会是  1+2    !!

办法1:用expr表示后面的表达式为一个数学运算

注意 + 前后一定要有空格!!否则不会进行算数运算

echo `expr 1 + 2`

办法2:用$[]表示数学运算。将一个数学运算写到$[]符号的中括号中,中括号中的内容将先进行数学运算

a=$[$a + 1]

 

三、一个简单实例

实现数学函数S=3(x^y)+4x^2+5y+6的运算

注:$1, $2 分别为第一个变量,第二个变量的值

./test.sh 2 4
#!/bin/bash
#test.sh

s=0 #定义一个求和变量,初值为0。
t=`expr $1**$2` #用expr改变运算顺序,求x的y次方。
t=$[t*3] #t乘以3。
s=$[s+t] #结果相加。
t=$[$1**2] #求x的平方。
t=$[t*4] #结果乘以4。
s=$[s+t] #结果相加。
t=`expr $2*5` #求5y的值。
s=$[s+t] #结果相加。
s=$[s+6] #结果加上6。
echo $s #输出结果。


相关文章:

  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2021-11-08
  • 2021-07-15
  • 2021-10-20
  • 2021-12-15
  • 2021-06-02
猜你喜欢
  • 2022-01-15
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2022-01-06
  • 2021-04-05
相关资源
相似解决方案