Linux作业,编写一个SHELL脚本 在用BASH执行时通过输入变量可以控制三角形的高度

Linux作业,编写一个SHELL脚本 在用BASH执行时通过输入变量可以控制三角形的高度,第1张

bash支持for循环的;如果是sh,只支持while循环,那么请用一楼方案。

以下为脚本 rectangle.sh 的内容:

#!/bin/bash

for ((i=1i<=$1i++))

do

for ((j=1j<=$ij++))

do

echo -n "#"

done

echo ""

done

保存后,分别运行:

chmod +x rectangle.sh

rectangle.sh 5

输出直角的倒三角形

for((i=$1i>0i--))

do

for((j=1j<=ij++))

do

echo -n "* "

done

echo

done

输出结果

* * * * *

* * * *

* * *

* *

*

正常的输出情况

32222dffac7e

1.png

32222dffac7e

2.png

2.通过调式分析来判断程序的运行原理

32222dffac7e

3.png

32222dffac7e

4.png

分析过程:

一、外层循环i=1,内层循环j=1

同时输入当for i=1与for j=1时候,输出*

当条件判断j=i=1时候,跳出内层的嵌套循环

二、外层循环i=2,内层循环j=1,2

同时输入当for i=2,for j=1时候,输出*

当条件判断i!=j时候,输出######

输入当for j=2时候,输出*

此时j=i=2,跳出内层循环

三、外层循环i=3,内层循环j=1,2,3

同时输入当for i=3,for j=1时候,输出*

当条件判断i!=j时候,输出######

输入当for j=2时候,输出*

当条件判断i!=j时候,输出######

输入当for j=3时候,输出*

此时j=i=3,跳出内层循环

四、外层循环i=4,内层循环j=1,2,3,4

同时输入当for i=4,for j=1时候,输出*

当条件判断i!=j时候,输出######

输入当for j=2时候,输出*

当条件判断i!=j时候,输出######

输入当for j=3时候,输出*

当条件判断i!=j时候,输出######

输入当for j=4时候,输出*

此时j=i=4,跳出内层循环


欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/yw/9018021.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-04-24
下一篇2023-04-24

发表评论

登录后才能评论

评论列表(0条)

    保存