hacker rank bash

本文详细介绍Shell编程的基础知识,包括数字运算、字符串比较、条件判断及数组操作等关键内容。通过实例演示了如何进行数学计算、比较数值大小、匹配字符串以及格式化输出浮点数。此外,还介绍了如何使用Shell来计算平均数,是初学者入门Shell编程的理想资料。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

  • 输入2个数字 求出 其±*/
	read a
	read b
	printf "%s\n" $a{+,-,*,/}"$b"|bc
	
  • 比较俩个数的大小 注意缩进 不然就要加;
read a
read b
if [ $a -gt $b ]
   then 
       echo "X is greater than Y"
   elif [ $a -eq $b ]
   then
       echo "X is equal to Y"
   else
       echo "X is less than Y"
fi
  • 字符串比较 需要注意空格 == 两边均需要空格
    [[]] 中支持字符串的匹配 比如$answer = ~ an.*er [[]]匹配字符串或者通配符的时候不需要引号。&& || <和>能够正常存在于[[]]结构。
read answer
if [[ $answer == "y"||$answer == "Y" ]]
   then
       echo "YES"
else
   echo "NO"
fi
  • 浮点数格式化输出 输入是一个表达式
read A
printf "%.3f" $(echo "$A" | bc -l)

#或者
read num
echo $num | bc -l | xargs printf "%.3f"
  • 计算平均数,注意数组如何定义arr=() ${var// /+}意为将所有的 空格替换为+ ${var/ /+}意为将第一个空格替换为+
read n
arr=($(cat))
arr=${arr[*]}
printf "%.3f" `echo "$((${arr// /+}))"/$n|bc-l`
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值