嵌入式小白第五天——流程控制(选择结构与循环结构)

目录

流程控制

选择结构(分支结构):

关系运算:

逻辑运算

选择语句

if语句

条件运算(三目)

switch语句

循环结构

C语言的循环语句:

构成循环的要素:

循环语句:

流程控制

顺序结构,选择结构(分支结构),循环结构——任何一个程序都是这三种结构组合而成

选择结构(分支结构):

就是提供判断的依据进行选择

C语言中通过关系运算逻辑运算构造来作为选择判断的条件

关系运算:

关系运算符: > >= < <= == !=

int n ; n >5;这一个关系表达式结果反应的是一种关系的成立与否,这个表达式是有值的(以0代表假,以1代表真),也是有类型的(以True代表真,以false代表假0)

例:0<a<5 这个表达式在数学中是可以的,但是在C语言中是有结合性的这个表达式应该自左向右结合(0<a)<5,要想实习a大于0小于五,应该使用逻辑运算符&&(与)

逻辑运算

逻辑运算符(&& || !):

&&(与):

格式:表达式1 && 表达式2

运算规则:一假则假

特性:短路特性(截断特性)

当表达式1为假时,结果会直接判断为假,且不会再去运算表达式2

||(或):

格式:表达式1 || 表达式2

运算规则:一真则真

特性:短路特性(截断特性)

当表达式1为真时,结果会直接判断为真,且不会再去运算表达式2

!(非):

运算规则:真假相对

真的非是假,假的非是真

注:系统是如何判断一个量的“真”和“假”?

规定:0(从数值角度看其值为0)为假,非0(从数值角看其值不为0)就是真。

选择语句

if语句

形式1:

语法形式:if (表达式){语句}

语义:如果表达式为真,则执行语句,也表示if语句结束了,程序继续;

表达式为假,表示if语句结束,程序继续往下

流程图:

形式2:

if (表达式){语句1} else{语句2}

语义:若如果表达式为真,执行语句1,语句1执行结束,表示if语句结束,程序继续;

表达式为假,执行语句2,语句2执行结束,表示if语句结束,程序继续往后

流程图:

形式3:

if(表达式1){语句1} else if(表达式2){语句2} else if(表达式3){语句3}...........else if(表达式m){语句m}else {语句 n}

语义:如果表达式1为真,执行语句1,语句1执行结束,表示if语句结束,程序继续;表达式1为假,判断表达式2,表达式2为真,执行语句2,语句2执行结束,表示if语句结束,程序继续;以此类推

流程图:

注意:1.if(表达式)后面不要写分号;2.else(表达式)没有这种写法,else后面没有表达式

3.有单独的if语句,没有单独的else语句,else一定是和某一个if配对的 4.对应的关系:如果有嵌套关系,一般从最里面的else开始找,再往前找if。

条件运算(三目)

表达式1?表达式2:表达式3

语义:判断表达式1,如果是真,则执行表达2,如果是假,则执行表达式3

条件运算符实际上就是if else的简写。

switch语句

switch(表达式)
case常量表达式1:语句1;break;

case 常量表达式2:语句 2;break;

.

..

..
case常量表达式n:语句 n;break;
default :语句n十1;break;

语义:求解表达式用表达式结果与下面case后的常量表达式的结果匹配成功,则执行对应case下的语句,直到遇见break或default后面的“{”才结束程序。

注意:1.switch后面表达式必须是一个整型表达式不能是浮点型;2.case后面是一个整型常量表达式,不能出现变量;3.case,default是做标签的,作为标签可以定位到相应的地方;可以给执行语句起一个标签,标签代表这句话;4.default的位置不一定是放在最后的,但是default最好后面也写上break。

循环结构

C语言的循环语句:

goto(严格意义来说并不是循环语句,叫跳转语句)

while

do-while

do

构成循环的要素:

1.循环的初始条件

2.循环体(反复被执行的代码)

3.使循环趋于结束的操作或语句

4.结束条件

goto:

语法:goto 标签

循环语句:

whilie:

语法:

while(表达式){语句}

语义:判断表达式,如果为真,执行语句,语句执行完之后,继续表达式判断直到表达式为假,while结束,程序继续。

流程图:

注意:while(表达式)后面不要有分号;

  • 21
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值