Linux上整数和浮点数的运算

一:shell中对整数和浮点数的运算
    常用的运算符号
        加法+    减法 -     乘法*     除法/     求余%  
           +=        -=        *=       /=        %=
 
    1.整数的运算
 
 
      (1).使用expr命令(注意:要求操作数和操作数之间用空格隔开,否则只会打印字符串)
          
        expr 1 + 1
        expr 2 - 1
        expr 2 \* 2
        expr 2 / 1  
        expr 1 % 6
 
      例如执行:#! /bin/bash
              num=$(expr 1 + 1)
              echo $num
       
       (2).使用$[]和使用$(())命令
              echo $[1+1]
              echo $[2-1]
              echo $[2*2]
              echo $[5/2];//舍弃小数
              echo $[5%2] 
              echo $[3**2]
           
           同理:num=1,num1=2;echo $((num+num1)) #这里变量中不需要用$符号
 
      2.浮点数的运算
        1.bc:一款高精度计算语言
        2.bc支持算数运算,逻辑运算,比较运算    
        3.支持批处理和以管道方式处理表达式计算    
            例:
              (1).直接在终端输入bc即可运算
 
              (2).在shell脚本中可使用如下命令:
                   num=$(echo "scale=2;2.03+2.04"|bc) #scale表示小数位数
                   echo $num
       3.关系运算(使用[],注意[]中变量要加空格)
         -eq 检测两个数是否相等,相等返回 true。                 [ $a -eq $b ] 返回 false。
         -ne 检测两个数是否相等,不相等返回 true。                 [ $a -ne $b ] 返回 true。
         -gt 检测左边的数是否大于右边的,如果是,则返回 true。         [ $a -gt $b ] 返回 false。
         -lt 检测左边的数是否小于右边的,如果是,则返回 true。         [ $a -lt $b ] 返回 true。
         -ge 检测左边的数是否大于等于右边的,如果是,则返回 true。 [ $a -ge $b ] 返回 false。
         -le 检测左边的数是否小于等于右边的,如果是,则返回 true。 [ $a -le $b ] 返回 true。
 
         例如:
        #!/bin/bash
a=10
b=20
 
if [ $a -eq $b ]
then
   echo "$a -eq $b : a 等于 b"
else
   echo "$a -eq $b: a 不等于 b"
fi
if [ $a -ne $b ]
then
   echo "$a -ne $b: a 不等于 b"
else
   echo "$a -ne $b : a 等于 b"
fi
if [ $a -gt $b ]
then
   echo "$a -gt $b: a 大于 b"
else
   echo "$a -gt $b: a 不大于 b"
fi
if [ $a -lt $b ]
then
   echo "$a -lt $b: a 小于 b"
else
   echo "$a -lt $b: a 不小于 b"
fi
if [ $a -ge $b ]
then
   echo "$a -ge $b: a 大于或等于 b"
else
   echo "$a -ge $b: a 小于 b"
fi
if [ $a -le $b ]
then
   echo "$a -le $b: a 小于或等于 b"
else
   echo "$a -le $b: a 大于 b"
fi

转载于:https://www.cnblogs.com/haibiscuit/p/10447702.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值