首页 理论教育单片机多语言编程之if-else分支语句

单片机多语言编程之if-else分支语句

【摘要】:if-else条件分支语句是选择结构的一种形式,是最常用的语句之一。这意味着如果if后面的表达式成立(不为0),则执行if下面的语句,否则直接向下执行。

if-else条件分支语句是选择结构的一种形式,是最常用的语句之一。

1.流程图(见图4-5)

2.程序格式

978-7-111-47138-7-Chapter04-28.jpg

译句的执行过程是,首先计算if后面的表达式,若表达式成立,即结果不为0,则执行语句1,越过语句2向下执行;若表达式不成立,即结果为0,则执行语句2,然后顺序向下执行。

3.【例4-8】 查询+1键状态,若按下,则点亮灯D0,否则继续查询

978-7-111-47138-7-Chapter04-29.jpg

图4-5 if-else分支语句

(1)编辑C语言源程序

978-7-111-47138-7-Chapter04-30.jpg

978-7-111-47138-7-Chapter04-31.jpg

(2)编译

(3)执行(软仿真调试)

复位后,所有端口为0xFF状态。开始查询+1键状态。若+1键为1,则灯D1点亮。当+1键为0,则灯D1灭,灯D0亮。

4.if-else嵌套语句

有时必须对某些端口的状态进行查询,可以用if-else嵌套语句实现。(www.chuimin.cn)

【例4-9】 查询INC~H键是否按下,若按下则输出到P1口显示

(1)编辑C语言源程序

978-7-111-47138-7-Chapter04-32.jpg

(2)编译

(3)执行(软仿真)

进入仿真用软件调出P1,P2端口状态。单击“跟踪”,当无任何键按下,P1=0xFF;当其中任一键按下,则P1显示对应键的键码。当键抬起,键码保存。当另一键按下,键码随之改变。

5.if-缺省

有时else是缺省的。这意味着如果if后面的表达式成立(不为0),则执行if下面的语句,否则直接向下执行。

【例4-10】 查询键INC键状态

(1)编辑C语言源程序

978-7-111-47138-7-Chapter04-33.jpg

978-7-111-47138-7-Chapter04-34.jpg

(2)编译

(3)软仿真

当无键按下,P1=0xFF。当INC=0,则D0亮;当INC=1,则D0状态保持。只有复位才能重新开始。