一、循环和遍历
1.1 循环
循环是一种重复执行一段代码的结构,只要满足循环的条件,会一直执行这个代码。
循环条件:在一定范围之内,按照指定的次数来执行循环。
循环体:在循环中执行的命令序列,只要条件满足,循环体会被一直执行。
1.2 遍历
遍历指的就是对数据结构中每个元素进行一次访问的过程。通常和循环一起使用。访问的目的就是为了执行特定的操作。
粗略地理解:循环就是操作,遍历就是输出。
1.3 循环的作用
重复执行代码,尤其是统一的,相同的,批量的操作。
提高代码的重复利用率。
- 提高人工的效率,减少人工干预。
- 简化程序的逻辑,降低代码出错的可能性。1.4 几种循环方式
-
1.4 几种循环方式
-
for循环:使用场景,一般用于已知循环次数的场景。
-
while循环:和for循环可以互相替换,常用于死循环。
-
until循环:until条件不满足才执行循环,条件满足,不执行
二、for循环
2.1 for
循环的几种格式
例:
创建一个文件/opt/passwd.txt
在文件中创建三行:test1,test2,test3
使用循环创建这三个用户,统一设定密码为123456
2.1.2 格式2
类C语言格式:
例
表达式1:定义变量并赋予初始值,i=0;
表达式2:循环的范围
表达式3:循环的方式,变量每次自增1
2.1.3 格式3
死循环:会一直循环
break
在循环内部,执行到break命令时,会立即跳出当前循环,并终止。
continue
在循环内部,当执行到continue,跳出当前循环,如果后续条件依然满足,会继续进行。
死循环的应用
例:猜数字,输入一个1-100的随机数,这个随机数由系统生成,每次猜提示猜大了还是猜小了,猜中则提示猜中了,并统计一共猜了多少次。
用死循环,一直到用户猜中为止,猜中了循环才会终止
随机数生成用变量$RANDOM,随机数范围0-32767
需要取0-99的随机数,只要用$RANDOM%100取除以100的余数再加1即可实现。
解释: let t++
,即让变量count
每次循环自增一。
2.2 练习
-
购物例题:
逛淘宝选购商品,每家商店有五种商品选购(衣服500元,裤子400元,鞋子350元,帽子150元,袜子50元),每次选购完或不买都会提示用户是否继续逛下一家商店,
如果不再继续逛的话进行购物车结算总额。
vim shopping
-
某山顶上有一颗香蕉树,一只猴子第一天从树上摘了若干根香蕉,当即就吃了一半,还不过瘾,又多吃了一根。第二天猴子又将剩下的香蕉吃了一半,禁不住诱惑,又多吃了一根香蕉。
依此类推,每天都将剩余的香蕉吃一半后再多吃一根。到了第十天,猴子发现只剩一根香蕉了,
请问这只猴子在第一天总共摘了多少根香蕉?