linux用.sh定义一个函数:三个数中求最大数;主函数中通过键盘输入或者位置参数得到三个数,并调用该函数求出最大数。
时间: 2024-09-19 17:03:52 浏览: 41
在Linux中,你可以创建一个名为`max_of_three.sh`的脚本文件,使用bash shell命令语法来定义一个函数并获取用户输入或者命令行参数来找到三个数中的最大值。以下是一个简单的示例:
```bash
#!/bin/bash
# 定义一个名为max_of_three的函数,接受三个参数
max_of_three() {
local num1=$1
local num2=$2
local num3=$3
# 比较三个数并返回最大值
max=$((num1 > num2 ? (num1 > num3 ? num1 : num3) : (num2 > num3 ? num2 : num3)))
echo "三个数中的最大值是: $max"
}
# 主函数部分
# 如果只有一个参数并且它看起来像是数字,我们假设它是第一个数字
if [ "$#" -eq 1 ] && [[ "$1" =~ ^[0-9]+$ ]]; then
read -p "请输入另外两个数字,用空格隔开: " num2 num3
else
# 如果有三个或更多参数,或者用户直接提供了三个数字作为命令行参数
if [ "$#" -ge 3 ]; then
max_of_three "$@"
else
echo "请输入至少三个数字。"
exit 1
fi
fi
# 调用函数
max_of_three "$num2" "$num3"
```
当你运行这个脚本时,如果没有提供足够的参数,会提示你输入其余两个数字。如果提供了三个或更多的参数,它将直接计算它们的最大值。
阅读全文