while循环语句的应用

while、和for循环被称为直到型循环,而until循环则是典型的当型循环。所谓直到型循环则是,关于条件满足的时候执行do命令序列而当型循环则是说当条件不满足的时候执行命令序列,

一、while循环语句结构

二、语法结构

while 条件

do

命令

done

关于while循环的使用过程中要避免程序陷入死循环,

三、应用举例

求1-10的自然数的平方。

#!/bin/bash
num=1
while [ $num -le 10 ]
        do
                square=$(expr $num \* $num)
                echo "$square"
                let num++
        done

执行结果:

[[email protected] while]# sh while.sh 
1
4
9
16
25
36
49
64
81
100

要求:输出100以内2的次幂

#!/bin/bash
echo 
var=1
while((var<=100))
        do 
          echo "输入的数值是:$var"
          ((var=var*2))
        done
echo
echo "成功循环输出"
[[email protected] while]# sh 100.sh 

输入的数值是:1
输入的数值是:2
输入的数值是:4
输入的数值是:8
输入的数值是:16
输入的数值是:32
输入的数值是:64

成功循环输出
[[email protected] while]#

注:直接使用echo可以输出空行。

在shell编辑的过程中如果需要使用“[]”,必须保证运算符与算数之间有空格,四则运算必须使用expr命令配合完成运算。而双括号的引入,使shell在算术运算的使用中,很好的完成了shell中算术及赋值运算。

其使用方法如下:((表达式1,表达式2……))

特点:

1、所有变量可以不加入"$"前缀。

2、在双括号结构中,可以使表达式像C语言一样使用,a++,b--,a=a+1等应用。

3、双括号可以进行逻辑运算,四则运算。

4、支持多个表达式运算,而各个表达式之间只需要使用“,”隔开即可。

5、能够扩展for,while和if条件测试预算。

#!/bin/bash
read -p "请输入符号:" char
read -p "请输入行数:" num
a=1
while [ $a -le $num ]
do
        b=1
        while [ $b -le $a ]
        do
                echo -n "$char"
                b=`expr $b + 1`
        done
        echo
        a=`expr $a + 1`
done
[[email protected] for]# sh zsj.sh 
请输入符号:@
请输入行数:7  
@
@@
@@@
@@@@
@@@@@
@@@@@@
@@@@@@@

注:上例中关于打印三角形的脚本,首先是对行数的控制,然后执行内部循环控制每行输出的符号个数。对于echo -n 其中-n选项表示本次输出不输出换行符,

对于打印正三角形时需要通过两侧内层循环分别输出打印符号和打印空格的个数等进行输出。其实例如下。

#!/bin/sh
read -p "请输入符号:" char
read -p "请输入行数:" num
a=1
while [ $a -le $num ]
do
        b=`expr $num - $a`
        while [ $b -gt 0 ]
         do
                echo -n " "
                b=`expr $b - 1`
        done
        c=1
        while [ $c -le `expr $a \* 2 - 1` ]
        do
        echo -n "$char"
        ((c++))
        done
        echo
        a=`expr $a + 1`
done
执行结果:
[[email protected] shift]# ./zsj_wihle.sh 
请输入符号:*
请输入行数:5
    *
   ***
  *****
 *******
*********
[[email protected] shift]#
时间: 2024-08-06 07:16:35

while循环语句的应用的相关文章

python基础之条件循环语句

前两篇说的是数据类型和数据运算,本篇来讲讲条件语句和循环语句. 0x00. 条件语句 条件语句是通过一条或多条语句的执行结果(True或者False)来决定执行的代码块. 可以通过下图来简单了解条件语句的执行过程: Python interprets non-zero values as True. None and 0 are interpreted as False. Python 判断非0的值为 True, 而None和0被认为是 False.注意这里的True和False首字母大写,Py

循环语句注意事项

三种循环语句的区别? * do...while循环至少执行一次循环体. * for,while循环必须先判断条件是否成立,然后决定是否执行循环体语句. for循环和while循环的区别: *如果你想在循环结束后,继续使用控制条件的那个变量,用while循环,否则用for循环. 不知道用谁就用for循环.因为变量及早的从内存中消失,可以提高内存的使用效率. 需求:在控制台输出所有的"水仙花数"和个数 * 所谓的水仙花数是指一个三位数,其各位数字的立方和等于该数本身. * 举例:153就是

js中的循环语句

js中的循环语句可分为三种:1.while:2.do……while:3.for. while的语法为 while (exp) {    //statements;} var a=1,b=0; while(a<=1000){ if(a%2==0){ if(b%20==0) { document.write("<br>第"+parseInt(b/20+1)+"行偶数"); } document.write(a+"&nbsp"

【C语言】用循环语句输出菱形

//用循环语句输出菱形 #include <stdio.h> int main() { int i,j; for(i=0;i<=3;i++) //上4行 { for(j=0;j<=3;j++) //上4行的左边 { if(i+j<=2) printf(" "); else printf("*"); } for(j=4;j<=6;j++) //上4行的右边 { if(j-i>=4) printf(" ");

Python循环语句

Python语言中的循环结构包含两种语句,分别是while语句和for语句. 1. while语句 while(表达式): -- else: -- 执行过程:当循环表达式为True时,依次执行while中的语句.直到循环表达式的值为False时,才执行else语句或退出循环.其中else子句可以省略,表达式两端的等号也可以省略. 2. for语句 for循环用于遍历一个集合,依次访问集合中的每个项目.格式如下: for 变量 in 集合: -- else: -- 执行过程:每次循环从集合中取出一

python基础之循环语句

一.if条件语句: 语法: 1.if单分支(单重条件判断) if expression: expr_true_suite 注释:expession为真执行代码expr_true_suite if单分支(单重条件判断) if not  active or over_time >= 10: print('Warning:service is dead') warn_tag+=1 2.if+else循环语句 if 1<2: print('ok') else: print('no') 3.多分支if+

c的循环语句

循环结构有: 1. goto语句和if语句构成循环 2.while语句 3.do-while语句 4.for语句 goto语句 goto语句是一种无条件转移语句, 与Basic中的goto语句相似.goto语句的使用格式为: goto语句标号: 其中标号是一个有效的标识符,这个标识符加上一个":"一起出现在函数内某处, 执行goto语句后,程序将跳转到该标号处并执行其后的语句.另外标号必须与goto语句同处于一个函数中, 但可以不在一个循环层中.通常goto语句与if条件语句连用, 当

Web开发(初级)- python、JavaScript及jQuery循环语句

循环语句 一.概述 python中循环语句有两种,while,for: JavaScript中循环语句有四种,while,do/while,for,for/in jQuery循环语句each 二.python循环语句 2.1 for 循环 # a. li = [1, 2, 3, 4] for i in li:     print(i) # b. li = [1, 2, 3, 4] for i, j in enumerate(li, 1):     print(i, j)      # enume

子数涵数&#183;C语言——循环语句

之前,我们讲过了编程中的三种结构(顺序.条件.循环),现在我们来看一下循环语句如何编写. 一.while循环语句(先判断后执行) 1 #include<stdio.h> 2 int main(void) 3 { 4 int sum=0,i=1; //定义变量sum的值为0,变量i的值为1 5 while(i<=100) //当i小于等于100时,进入循环 6 { //while(){}:括号内为条件表达式,花括号内为循环体 7 sum=sum+i; //用sum来做累加器 8 i++;

#9.5课堂JS总结#循环语句、函数

一.循环语句 1.for循环 下面是 for 循环的语法: for (语句 1; 语句 2; 语句 3) { 被执行的代码块 } 语句 1 在循环(代码块)开始前执行 语句 2 定义运行循环(代码块)的条件 语句 3 在循环(代码块)已被执行之后执行 2.for-in语句 for-in语句是一种精准的迭代语句,可以用来枚举对象的属性. 下面是for-in语句的语法: for(property in expression) statement demo: for(var propName in w