#!/bin/bash
# 首先,提醒用户输入整数
echo "请输入一些整数,以空格分隔:"
# 接受用户的输入,并将其分割成数组
read -a numbers
# 对数组中的每个数字求和
sum=0
for n in "${numbers[@]}"; do
sum=$((sum + n))
done
# 计算平均值,保留两位小数
mean=$(echo "scale=2; $sum / ${#numbers[@]}" | bc)
# 打印结果
echo "这些整数的平均数为:$mean"
说明:
read
命令接受用户的输入,并将其分割成一个数组。-a
选项告诉 read
命令将输入存储到数组中(而不是单个变量中)。for
循环对数组中的每个数字求和。需要注意的是,如果我们要使用 Bash 进行数学计算,必须使用 $((...))
或者 $[...]
这样的语法。bc
命令计算平均值,并将其保留两位小数。scale=2
选项告诉 bc
命令在计算时保留两位小数。使用该脚本时,用户需要输入一行整数,以空格分隔。例如:
请输入一些整数,以空格分隔:
1 3 2 5 7
这些整数的平均数为:3.60
注意,由于我们使用了 bc
命令来计算平均值,因此需要确保系统上安装了 bc
工具。如果您使用的是基于 Debian/Ubuntu 的 Linux 发行版,可以使用以下命令安装 bc
:
sudo apt-get install bc