- 1、本文档共15页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
汽车单片机技术长沙职业技术学院刘岳积木游戏:程序结构——选择结构
2C51程序结构C语言是一种结构化的编程语言。其基本元素是模块,它是程序的一部分,只有一个入口和一个出口,不允许有中途插入或从模块的其它路径退出。C语言程序有3种基本结构:顺序结构选择结构循环结构一个程序中,只有1个“开始”、1个“结束”
3选择结构选择结构的程序中必包含一个判断框,根据给定的条件P是否成立而选择执行A框或B框。选择结构由条件语句构成。AB
4条件语句条件语句又被称为分支语句,其关键字是由if语句或switch/case语句构成。C语言提供了3种形式的if语句结构:用法1:ifA用法2:ifAelseB用法3:ifAelseifBelseifC……
5条件语句:if语句用法1:ifAif(条件表达式)语句A描述:当条件表达式的结果为真时,就执行语句A,否则就跳过。if(a=3)b=0;//条件表达式//语句A,满足条件时执行,否则跳过
6用法2:ifAelseBif(条件表达式)语句Aelse语句B描述:当条件表达式成立时,就执行语句A,否则就执行语句B。if(a==b)a++;elsea--;//条件表达式,当a等于b时//a加1//否则a-1条件语句:if语句
7用法3:ifAelseifBelseifC……if(条件表达式1)语句Aelseif(条件表达式2)语句Belseif(条件表达式3)语句C……else语句N描述:如果表达式1为“真”,则执行语句A,退出if语句;否则去判断表达式2,如果为“真”,则执行语句B,退出if语句;否则去判断表达式3···最后,如果表达式都不成立,则执行else后面的语句N。else和语句N也可省略不用。条件语句:if语句
8条件语句:if语句练一练请画出下述ifelseif语句的程序流程图:if(条件表达式1)语句Aelseif(条件表达式2)语句Belseif(条件表达式3)语句C……else语句N
9用法3:ifAelseifBelseifC……if(a=3)b=10;elseif(a=2)b=20;elseif(a=1)b=30;elseb=0;//条件表达式1,当a大于等于3时//语句A,赋值b为10//条件表达式2,当a小于3且大于等于2时//否则b为0//语句B,赋值b为20//语句B,赋值b为30//条件表达式3,当a小于2且大于等于1时若a=3,下列程序运行后b的值?若a=2?a=1?a=0?条件语句:if语句
10if语句注意事项if语句中的“表达式”通常为逻辑表达式或关系表达式,也可以是任何其他的表达式或类型数据,只要表达式的值非0即为“真”。以下语句都是合法的:if(3){……}if(x==8){……}if(P3_0){……}在if语句中,“表达式”必须用括号括起来。在if语句中,花括号“{}”里面的语句组如果只有一条语句,可以省略花括号。但是为了提高程序的可读性和防止程序书写错误,建议在任何情况下,都加上花括号。条件语句:if语句
11条件语句:switch语句条件语句又被称为分支语句,其关键字是由if语句或switch/case语句构成。if条件语句用法3中,用多个条件语句可以实现多方向条件分支,但是可以发现使用过多的条件语句实现多方向分支会使条件语句嵌套过多,程序冗长,这样读起来也很不好读。这时使用开关语句switch/case同样可以达到处理多分支选择的目的,又可以使程序结构清晰。
12switch(表达式){case常量表达式1:语句1;break;case常量表达式2:语句2;break;……case常量表达式n:语句n;break;default:语句m}比较表达式与各个常量表达式的值;如果相等时则执行后面的语句,再执行break(间断语句)跳出switch语句;如果case没有和条件相等的值时就执行default后的语句;若要求没有符合的条件时不做任何处理,则可以不写default语句。条件语句:switch语句
13程序1:if(a=3)b=10;elseif(a=2)b=20;elseif(a=1)b=30;elseb=0;程序2:switch(a){case3:b=10;breakcase2:b=20;breakcase1:b=30;breakdef
文档评论(0)