美文网首页
7.逻辑结构

7.逻辑结构

作者: 互联网中的一个咸鱼 | 来源:发表于2019-08-06 09:36 被阅读0次

一、if 判断

if ... then ... fi

单层
如果 是真的 那么 ...

if [ 条件判断式 ];then
    当条件判断式成立时,可以进行的命令。
fi   # 结束这个判断语句结构

if ... then ... else....fi

多重、复杂条件判断式
如果 是真的 那么 ... 否则 ...

一颗红心,两手准备

if [ 条件判断式 ]; then
    当条件判断式成立时,可以进行的指令工作内容;
else
    当条件判断式不成立时,可以进行的指令工作内容;
fi

if ... elif ... elif ... else ... fi

多个条件判断 (if ... elif ... elif ... else) 分多种不同情况执行

if [ 条件判断式一 ]; then
    当条件判断式一成立时,可以进行的指令工作内容;
elif [ 条件判断式二 ]; then
    当条件判断式二成立时,可以进行的指令工作内容;
else
    当条件判断式一与二均不成立时,可以进行的指令工作内容;
fi

注意
elif 也是个判断式,因此出现 elif 后面都要接 then 来处理!但是 else 已经是最后的没有成立的结果了, 所以 else 后面并没有 then

二、利用case ...esca判断

基本语法

case  $变量名称 in   <==关键字为 case ,还有变量前有钱字号
  "第一个变量内容")   <==每个变量内容建议用双引号括起来,关键字则为小括号 )
    程序段
    ;;            <==每个类别结尾使用两个连续的分号来处理!
  "第二个变量内容")
    程序段
    ;;
  *)                  <==最后一个变量内容都会用 * 来代表所有其他值
    不包含第一个变量内容与第二个变量内容的其他程序运行段
    exit 1
    ;;
esac                  <==反过来写,结束当前语句结构!

模式还可以是多个

#!/bin/bash
cat << EOF
m|M) show memory usages;
d|D) show disk usages;
q|Q) quit
EOF
read -p "Your choice" choice
case $choice in
m|M)
        free -m
        ;;
d|D)
        df -h
        ;;
q|Q)
        exit
        ;;
*)
        eco "Invalid input"
        ;;
esac

三、while...do...done(不确定的循环)

while [ condition ]  ==>中括号内的状态就是判断式
do            ==> do 是循环的开始!
    代码段
    代码段
done          ==> done 是循环的结束

四、 for do done (固定的循环)

for var in con1 con2 con3 ...
do
    程序段
done

var 是变量名
con1 con2 con3 是常量,就是具体的数据
也可以是一个已经被赋值的变量, 写法 [图片上传失败...(image-4ede60-1565009376150)]

{val2}

以上面的例子来说,这个 $var 的变量内容在循环工作时:

  1. 第一次循环时, $var 的内容为 con1 ;
  2. 第二次循环时, $var 的内容为 con2 ;
  3. 第三次循环时, $var 的内容为 con3 ;
  4. ....

数值运算

➜  ~ n=1
➜  ~ let n++
➜  ~ echo $n
2
➜  ~ (( n++ ))
➜  ~ echo $n
3
➜  ~ a=2
➜  ~ b=3
➜  ~ let f=a+b
➜  ~ echo $n
3
➜  ~ echo $f
5
➜  ~ let f = a + b     ==> 错误
zsh: bad math expression: operand expected at `='
➜  ~ let "f = a + b"
➜  ~ echo $f
5

for 循环中 变量的取值方式

a. 从一组字符串中取值

for  var     in    one    two    three   four   five 
do
    echo    "****************************"
    echo   '$var   is '    $var
done

b. 从位置变量中取值

for    var
do
    echo  '-----------------------------'
    echo   '$var   is '    $var
done

c. 从累计变化的格式中取值

#!/bin/bash 

for    ((var=1;var<=10;var++))
do
    echo   "------------------------" 
    echo   '$var   is '    $var
done

d. 从命令结果中取值

#!/bin/bash
for   var   in   $(cat    file.txt)
do
    echo  " ------------------------" 
    echo   '$var   is '    $var
done

六、break 和 continue

相关文章

  • 7.逻辑结构

    一、if 判断 if ... then ... fi 单层如果 是真的 那么 ... if ... then ...

  • Mongodb介绍与安装部署, 简单使用, 用户管理+验证库

    1. 逻辑结构 Mongodb 逻辑结构 MySQL逻辑结构库databas...

  • Mongodb介绍与安装部署, 简单使用, 用户管理+验证库

    1. 逻辑结构 Mongodb 逻辑结构 MySQL逻辑结构库database 库集合(collection) 表...

  • 数据结构->概念

    数据结构有三要素: 1.逻辑结构 逻辑结构是指元素之间的逻辑关系,即从逻辑上描述数据。 数据的逻辑结构分为:(...

  • 数据结构基础

    1、数据结构三要素: 逻辑结构、物理结构、数据运算 2、逻辑结构 逻辑结构是数据元素之间的逻辑关系,与数据的存储无...

  • 数据结构的分类

    数据结构的分类 分为 逻辑结构 、 存储结构 、运算。 逻辑结构 指反映数据元素之间的逻辑关系的数据结构。分为 线...

  • 绪论

    数据结构 数据结构分为逻辑结构和物理结构: 逻辑结构:指数据对象中数据元素之间的相互关系。 物理结构:指数据的逻辑...

  • 市场结构

    博弈…… 1.市场逻辑 2.形态学(顶低结构) 3.动力学 4.指标 5.技术体系综合 6.交易系统 7.资金管理...

  • 数据结构理论

    数据结构分为逻辑结构和物理结构。 逻辑结构 1,集合结构。2,线性结构。3,属性结构。4,图形结构。 物理结构 1...

  • 数据结构中的逻辑结构与物理结构

    逻辑结构面向问题,物理结构面相计算机,其本目标就是将数据及其逻辑关系存储到计算机的内存中。 逻辑结构 逻辑结构分为...

网友评论

      本文标题:7.逻辑结构

      本文链接:https://www.haomeiwen.com/subject/gljvdctx.html