从命令输入三个数字进行升序排序(冒泡排序)
原理:比较两个相邻的元素,将值大的元素交换至右端。
脚本内容:
[root@VM_0_10_centos shellScript]# cat numSort.sh #!/bin/bash # 将三个数字进行升序排序,相当于java中的冒泡排序 # 从命令行输入三个数字 read -p "请输入一个整数:" num1 read -p "请输入一个整数:" num2 read -p "请输入一个整数:" num3 # 定义个临时变量存放数据 tmp=0 # 不管输入的数谁大谁小,最后输出的数必须是num1 < num2 < num3 # 将num1和num2进行比较,如果num1大于num2,将num1和num2的值对调 if [ $num1 -gt $num2 ];then tmp=$num1 num1=$num2 num2=$tmp fi # 如果num1大于num3,将num1和num3的值对调 if [ $num1 -gt $num3 ];then tmp=$num1 num1=$num3 num3=$tmp fi # 如果num2大于num3,将num2和num3的值对调 if [ $num2 -gt $num3 ];then tmp=$num2 num2=$num3 num3=$tmp fi echo "排序后数据(从小到大)为:$num1,$num2,$num3"