循环语句与函数
- 一、循环与遍历
- 1.1循环
- 1.2遍历
- 1.3循环与遍历
- 二、for循环
- 2.1for循环的基本格式
- 2.2for循环小实验
- 2.3双层for循环实验
- 三、while循环
- 3.1 while格式
- 四、跳出循环
- 4.1continue跳出循环实验
- 4.2break跳出循环实验
一、循环与遍历
1.1循环
- 循环 (Loop) 是计算机编程中非常重要的一种结构,其主要目的是为了简化代码编写,提高代码的重复利用率,以及提高程序的效率。
1.2遍历
- 遍历是指对一组数据结构中的每个元素进行一次访问的过程。
- 在计算机编程中,常常需要对数组、列表、树等数据结构中的每个元素进行遍历,以便对它们进行操作或者输出。
1.3循环与遍历
- 循环是一种控制流程的结构,用于重复执行一段代码,而遍历是一种数据操作的过程,用于访问并处理数据结构中的每个元素。
- 在某些情况下,循环和遍历可以结合使用,以便在循环中遍历数据结构并对其进行操作。
二、for循环
2.1for循环的基本格式
for (变量名字) in (取值列表)
do
(命令序列)
done
for (i=0;i<=5;i++)
do
echo
done
for ((;;))
2.2for循环小实验
批量添加用户并给用户设置密码为123
2.3双层for循环实验
常用的转义字符
echo -n :表示不换行输出
echo -e :输出转义字符,将转义后的内容输出到屏幕上
- 只有加了-e才能执行下面的转义符:
- \b :转义后相当于按退格键(backspace),但前提是\b"后面存在字符:\b"表示删除前一个字符,"\b\b"表示删除前两个字符。
- \c :不换行输出,在““后面不存在字符的情况下,作用相当于 echo -n: 但是当\c"后面仍然存在字符时,”\c"后面的字符将不会被输出。
- \n:换行,被输出的字符从"\n"处开始另起一行。
- \f :换行,但是换行后的新行的开头位置连接着上一行的行尾。
- \v:与\f相同。
- \t:转以后表示插入tap,即横向制表符。
- \r : 光标移至行首,但不换行,相当于使用"\r"以后的字符覆盖"\r"之前同等长度的字符,但是当“"后面不存在任何字符时,“\r"前面的字符不会被覆盖
- \:表示插入\本身。
实验:制作乘法口诀表
for i in {1..9} #外层循环,循环九次
do
for ((a=1;a<=i;a++)) #内层循环,每一次外层循环循环几次a<=i表示每一次内层循环的次数不得大于外层
do
echo -ne "$i*$a=$(($i*$a))\t" #使用转义字符输出可查看上面表壳
done
echo #echo什么都不加表示输入换行输出
done
三、while循环
- while循环满足条件即执行,不满足不执行
3.1 while格式
i=0 #需要在循环外先定义变量
while [ $i -le 5 ] #while判断条件
do
let i++
echo $i #执行循环动作
done #结束
~
while true #表示死循环
四、跳出循环
4.1continue跳出循环实验
- 表示满足continue条件时跳出循环,但是不影响后续循环执行,它的作用是在循环内部跳过本次循环并执行下次循环
for i in {1..3} #外层循环三次
do
for a in {1..3} #每一次外层循环内层循环都循环三次
do
if [[ $a = 2 ]]
then
continue #当内存循环到数字2的时候跳出内存循环,继续往后执行
fi
echo -n "$a" #输出内存循环
done
echo
done
continue后面什么都不加,默认跳出一层循环,continue 2表示跳出两次循环,以此类推
4.2break跳出循环实验
- 在某个循环中遇到break直接结束此次循环,但不影响外面嵌套的循环。
- break 【数字】:表示结束几层循环,2表示结束当前和上一层循环,以此类推。