一道简单shell编程

写一个脚本文件,对命令行传给他的数字参数进行求和显示结果。程序中要求使用for循环。例如:若该程序名为sum,用户键入:$ sum 10 20 30回车
则显示结果如下:
10+20+30=60 
这个问题……,放在这儿100年也不会有人回答,悬赏分为0,还要动脑子想,实话说,昨天晚上我就看过你的问题了,也想过,但是处理打印10+20+30 +……的字符串有问题,因为不确定你到底希望有几个参量相加,所以我全部得动态的变化数值,另外一个问题是,bash不能处理浮点数,就是小数啦,得把数值输出到另外一个叫awk的程序相加再返回来,太麻烦了,不高兴想,自己看看教科书吧,考试谁能代替你?
补充回答:以下脚本你试试,就三个数完全可以不用for循环嘛,我怀疑你们老师的本意是要输入参量个数不确定哦?这个脚本只接受3个参量,不能多也不能少
#!/bin/bash
sum=0
for arg in $*
do
let "sum=sum+$arg"
done
echo "$1+$2+$3=$sum"

另外一种方法

#!/bin/bash
if [ $# = 0 ]
then
echo "no number-list"
exit 1
fi
sum=0
count=0

for arg in $*
do
let sum=sum+$arg
count=$((count+1))
done
echo "The sum of all $count number is $sum"
exit 0

 

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值