DAY35 shell脚本双重循环

296 阅读2分钟

一、双重循环

1. 双重循环概述

双重循环需勋在两个及以上的自变量,一般用于多层循环判断中,比如将行和列设为两个自变量按一定规则顺序显示数据,可通过Shell脚本做出各种排列图形以及九九乘法表。

2. 双重循环结构

image.png

循环必须是有规律的递增或递减,脚本从上至下执行,在没有break、exit、sleep、continue等结束语句时,循环语句块会逐条执行。\

内层循环是外层循坏的一条循环语句,当变量满足外层循环的条件时,就会进入外层循环执行外层循环语句,当变量满足内层循环的条件时,转而执行内层循环,只有当内层循环结束才会跳出内层循环,然后继续外层循环语句的执行。

二、循环特殊操作

1. exit

停止循环,直接退出执行脚本

2. break

跳出当前循环,默认为break 1,后面数字为跳出层数,例如break 2为跳出2层循环。

3. return

return表示退出函数并返回一个退出值,脚本中可以用?变量显示该值 使用原则: (1)函数一结束就取返回值,因为?变量显示该值\ 使用原则:\ (1)函数一结束就取返回值,因为?变量只返回执行的最后一条命令的退出状态码;
(2)退出状态码必须是0~255,超出时返回值将为除以256后的取余数。

4. continue

终止某次循环中的命令,但不会完全终止整个命令,而是直接跳过满足条件的循环,即满足条件不循环,转而循环不满足的条件

5. sleep

sleep休眠,单位为秒,将线程休眠规定时间后继续执行,sleep(10)为休眠10秒。

6. delay

增加延时时间,单位为0.4毫秒,即延时一秒为delay(250)。

实验

直线

image.png

image.png

实心矩形

image.png

image.png

空心矩形

image.png

image.png

直角三角形

image.png

image.png

倒直角三角形

image.png

image.png

反直角三角形

先输出一个空格填充的倒直角三角形,再输出一个星星填充的直角三角形。

image.png

image.png

等腰三角形

反直角三角形+正直角三角形

image.png

image.png

我们也可以用数学公式方法做出来

image.png

image.png

平行四边形

image.png

image.png

梯形

先建立一个倒三角,然后利用公式得出 image.png

image.png

等腰梯形

先建立一个梯形再加一个直角三角

image.png

image.png

菱形

image.png

image.png