_C51多重复合循环指令指令匹配选择: 如果 a=1; b=2; c=3; 让阿拉伯数字项和字母项进行--对应?

if语句是C51中的一个基本条件选择语句,它通常有三种格式:

(1)if (表达式) {语句;}

(3)if (表达式1) {语句1;}

执行上面语句时,如果x不等于y,则输出x的值和y的值。

     执行上面语句时,如x大于y成立,则把x送给最大值变量max,如x大于y不成立,则把y送给最大值变量max。使max变量得到x、y中的大数。

执行上面语句后,能够根据分数score分别打出A、B、C、D、E五个等级。

if语句通过嵌套可以实现多分支结构,但结构复杂。switch是C51中提供的专门处理多分支结构的多分支选择语句。它的格式如下:

(1)switch后面括号内的表达式,可以是整型或字符型表达式。

(2)当该表达式的值与某一“case”后面的常量表达式的值相等时,就执行该“case”后面的语句,然后遇到break语句退出switch语句。若表达式的值与所有case后的常量表达式的值都不相同,则执行default后面的语句,然后退出switch结构。

(3)每一个case常量表达式的值必须不同否则会出现自相矛盾的现象。

(4)case语句和default语句的出现次序对执行过程没有影响。

(5)每个case语句后面可以有“break”,也可以没有。有break语句,执行到break则退出switch结构,若没有,则会顺次执行后面的语句,直到遇到break或结束。

(6)每一个case语句后面可以带一个语句,也可以带多个语句,还可以不带。语句可以用花括号括起,也可以不括。

(7)多个case可以共用一组执行语句。

对学生成绩划分为A~D,对应不同的百分制分数,要求根据不同的等级打印出它的对应百分数。可以通过下面的switch/case语句实现。

while语句在C51中用于实现当型循环结构,它的格式如下:

 while语句后面的表达式是能否循环的条件,后面的语句是循环体。当表达式为非0(真)时,就重复执行循环体内的语句;当表达式为0(假),则中止while循环,程序将执行循环结构之外的下一条语句。它的特点是:先判断条件,后执行循环体。在循环体中对条件进行改变,然后再判断条件,如条件成立,则再执行循环体,如条件不成立,则退出循环。如条件第一次就不成立,则循环体一次也不执行。

【例】  下面程序是通过while语句实现计算并输出1~100的累加和。

do  while语句在C51中用于实现直到型循环结构,它的格式如下:

它的特点是:先执行循环体中的语句,后判断表达式。如表达式成立(真),则再执行循环体,然后又判断,直到有表达式不成立(假)时,退出循环,执行do  while结构的下一条语句。do  while语句在执行时,循环体内的语句至少会被执行一次。

for(表达式1;表达式2;表达式3)

for语句后面带三个表达式,它的执行过程如下:

(1)先求解表达式1的值。

(2)求解表达式2的值,如表达式2的值为真,则执行循环休中的语句,然后执行下一步(3)的操作,如表达式2的值为假,则结束for循环,转到最后一步。

(3)若表达式2的值为真,则执行完循环体中的语句后,求解表达式3,然后转到第四步。

(4)转到(2)继续执行。

(5)退出for循环,执行下面的一条语句。

    在for循环中,一般表达式1为初值表达式,用于给循环变量赋初值;表达式2为条件表达式,对循环变量进行判断;表达式3为循环变量更新表达式,用于对循环变量的值进行更新,使循环变量能不满足条件而退出循环。

【例】 用for语句实现计算并输出1~100的累加和。

在一个循环的循环体中允许又包含一个完整的循环结构,这种结构称为循环的嵌套。外面的循环称为外循环,里面的循环称为内循环,如果在内循环的循环体内又包含循环结构,就构成了多重循环。在C51中,允许三种循环结构相互嵌套。

【例】用嵌套结构构造一个延时程序。

这里,用内循环构造一个基准的延时,调用时通过参数设置外循环的次数,这样就可以形成各种延时关系。

break和continue语句通常用于循环结构中,用来跳出循环结构。但是二者又有所不同,下面分别介绍。

前面已介绍过用break语句可以跳出switch结构,使程序继续执行switch结构后面的一个语句。使用break语句还可以从循环体中跳出循环,提前结束循环而接着执行循环结构下面的语句。它不能用在除了循环语句和switch语句之外的任何其它语句中。

【例19】下面一段程序用于计算圆的面积,当计算到面积大于100时,由break语句跳出循环。

continue语句用在循环结构中,用于结束本次循环,跳过循环体中continue下面尚未执行的语句,直接进行下一次是否执行循环的判定。

continue语句和break语句的区别在于:continue语句只是结束本次循环而不是终止整个循环;break语句则是结束循环,不再进行条件判断。

在程序中,当i能被3整除时,执行continue语句,结束本次循环,跳过printf()函数,只有能被3整除时才执行printf()函数。

return语句一般放在函数的最后位置,用于终止函数的执行,并控制程序返回调用该函数时所处的位置。返回时还可以通过return语句带回返回值。return语句格式有两种:

如果return语句后面带有表达式,则要计算表达式的值,并将表达式的值作为函数的返回值。若不带表达式,则函数返回时将返回一个不确定的值。通常我们用return语句把调用函数取得的值返回给主调用函数。

}

1.4发展趋势随堂测验

1.5技术指标随堂测验

1.6运算基础随堂测验

1.7结构框图随堂测验

1、1) 仔细观察你的周边,日常生活学习中,有哪些电器、设备使用了单片机? 2) 上网搜索资料,在光电领域,单片机又有哪些应用? 1)、2)两项都要有至少一个回答,回答直接输入,不要使用附件。 总分10分,每个正确回答加1分,少一项减1分,使用附件回答减1分。最高10分,最低0分。

第二章 单片机的结构与原理

2.3 硬件系统结构(1)随堂测验

2.3 硬件系统结构(2)随堂测验

2、程序存储器是 存储程序数据

2.3 硬件系统结构(3)随堂测验

2.4 存储器结构(1)随堂测验

2.4 存储器结构(2)随堂测验

2.4 存储器结构(3)随堂测验

2.6 复位电路随堂测验

2.9 工作方式(2)随堂测验

第三章 单片机指令系统

3.3指令系统随堂测验

3.5指令分类随堂测验

3.6直接寻址随堂测验

3.8间接寻址随堂测验

3.10数据交换指令随堂测验

3.12逻辑运算随堂测验

第五周 汇编语言、C51程序设计及定时器计数器

5.2 定时方法随堂测验

5.3 功能介绍1随堂测验

5.4 控制寄存器随堂测验

5.5 方式寄存器随堂测验

5.6.1 方式0、方式1随堂测验

注意:答案用十六进制,十六进制数用大写字母H表示。

注意:答案用十六进制,十六进制数用大写字母H表示。

}

我要回帖

更多关于 多重复合循环指令 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信