目录
2.提示用户输入一个小于100的整数,并计算从1到该数之间所有整数的和
for循环
for 循环一般用于遍历序列,如列表或者数组。
基本语法如下:
for 变量名称(注意是名称不是变量$等) [ in 名称范围 ] (可以不写)
do
执行内容 若满足循环则做什么动作
done //for循环结束标志
类C语言格式
表达式1:定义变量并赋值
表达式2:决定是否循环
表达式3:决定循环变量如何改变,决定循环什么时候结束
for (( 表达式1 ;表达式2;表达式3 ))
do
执行内容 若满足循环则做什么动作
done for循环结束标志
for var in list
do
command1
command2
...
commandN
done
例如,打印 1 到 5 的数字:
for i in {1..5}
do
echo "Number is $i"
done
while循环
while 循环一般用于当某条件为真时,执行循环体。
基本语法如下:
while [ 判断条件] 使用while循环满足条件执行do,不满足不执行
do
执行动作 while循环执行动作
done while循环结束标志
死循环语句
while [1 -eq 1] 判断条件写一个永久为真的条件
do 一直执行do内的命令
done
while true 直接写判断条件为真
do //一直执行do内的命令
done
while : 判断条件为冒号也表示死循环
do //一直执行do内的命令
done
while [ condition ]
do
command1
command2
...
commandN
done
例如,打印 1 到 5 的数字:
i=1
while [ $i -le 5 ]
do
echo "Number is $i"
i=$(( i+1 ))
done
until循环
until 循环与 while 循环类似,但是 until 循环会一直执行,直到给定的条件为真。
基本语法如下:
until [ 条件测试操作 ]
do
判断式/命令序列
done
until [ condition ]
do
command1
command2
...
commandN
done
例如,打印 1 到 5 的数字:
i=1
until [ $i -gt 5 ]
do
echo "Number is $i"
i=$(( i+1 ))
done
跳出循环
在 Linux Shell 脚本中,可以使用 break
和 continue
两个命令来控制循环的执行。
break 命令
break命令用于终止整个循环,不论条件是否满足。例如:
for i in {1..5}
do
if [ $i -eq 4 ]
then
break
fi
echo "Number is $i"
done
#上面的脚本将只打印 1 、2、3,当 i 等于 4 的时候,`break` 命令会终止整个循环。
continue 命令
continue命令用于跳过当前迭代,进入下一次迭代。例如:
for i in {1..5}
do
if [ $i -eq 3 ]
then
continue
fi
echo "Number is $i"
done
#上面的脚本将打印 1、2、4 和 5,当 i 等于 3 的时候,`continue` 命令会跳过当前迭代,进入下一次迭代。
操作试验
1.计算从1到100所有整数的和
2.提示用户输入一个小于100的整数,并计算从1到该数之间所有整数的和
3.某山顶上有一颗香蕉树,一只猴子第一天从树上摘了若干根香蕉,当即就吃了一半,还不过瘾,又多吃了一根。第二天猴子又将剩下的香蕉吃了一半,禁不住诱惑,又多吃了一根香蕉。依此类推,每天都将剩余的香蕉吃一半后再多吃一根。到了第十天,猴子发现只剩一根香蕉了,请问这只猴子在第一天总共摘了多少根香蕉?