早教吧 育儿知识 作业答案 考试题库 百科 知识分享

各位大哥大姐,问你们个linux的题。设计一个shell程序计算n个数字的累加和及算数平均值:(1)在命令行接收参数n(2)在程序开始后判断n的合法性,如果n不是正整数,则返回值为1(3)当

题目详情
各位大哥大姐,问你们个linux的题。 设计一个shell程序计算n个数字的累加和及算数平均值:
(1)在命令行接收参数n
(2)在程序开始后判断n的合法性,如果n不是正整数,则返回值为1
(3)当n合法时,循环从标准输入读入n个数,并在屏幕上显示最终计算结果。
▼优质解答
答案和解析
#!/bin/bash
[ $# -ne 1 ] && exit 1 #判断参数个数
[ "$1" -le 0 ] && exit 1 #判断参数合法性
sum=0
for (( i=1;i<=$1;i=i+1 ))
do
read -p "Input number #$i: " num[$i]
sum=$((sum+num[$i]))
done
average=$((sum/$1))
echo "sum: $sum"
echo "average: $average"
exit 0
看了 各位大哥大姐,问你们个lin...的网友还看了以下: