嵌入式C编程02-流程控制.ppt

上传人:牧羊曲112 文档编号:6569733 上传时间:2023-11-13 格式:PPT 页数:40 大小:1.10MB
返回 下载 相关 举报
嵌入式C编程02-流程控制.ppt_第1页
第1页 / 共40页
嵌入式C编程02-流程控制.ppt_第2页
第2页 / 共40页
嵌入式C编程02-流程控制.ppt_第3页
第3页 / 共40页
嵌入式C编程02-流程控制.ppt_第4页
第4页 / 共40页
嵌入式C编程02-流程控制.ppt_第5页
第5页 / 共40页
点击查看更多>>
资源描述

《嵌入式C编程02-流程控制.ppt》由会员分享,可在线阅读,更多相关《嵌入式C编程02-流程控制.ppt(40页珍藏版)》请在三一办公上搜索。

1、流程控制,课程安排,什么是流程控制顺序流程结构分支流程结构循环流程结构,回顾什么是程序?程序员将解决某个工程问题的想法通过编程语言组织成程序如果组织程序?程序=数据(组合)+语句(组合)回顾有哪些基本数据类型?回顾什么是语句?表达式加分号构成语句。语句就是计算机的行为动作!,从回顾开始,想象一下自己参加这个培训班的日子将会怎样度过?温习上次课程;预习下次课程;如果上课日子到来;到学校上课;如此循环,直到培训班课程结束!这里存在几种动作过程(流程)?,生活中的动作过程(流程),顺序流程分支流程循环流程,流程分类,1966 年,Boehm 和 Jacopini 证明了程序设计语言仅仅使用顺序、选择

2、和循环三种基本控制结构就足以表达出各种其他的形式结构。所以,利用顺序结构、分支结构、循环结构或者这些结构的组合就可以让计算机处理任何工程问题了,程序语言基本控制结构,课程安排,什么是流程控制顺序流程结构分支流程结构循环流程结构,顺序流程结构,从控制台输入一个字符,输出该字符的ASCII编码,实例,课程安排,什么是流程控制顺序流程结构分支流程结构循环流程结构,分支流程结构,判断语句:有么为真,要么为假!没有第三种情况!,语法结构if(比较/逻辑表达式)语句一;语句二;,if语句,判断整数是否大于0、小于0、等于0、不等于0判断整数是否在某个范围之内输入字符,判断如果是小写字母,则输出该字母输入字

3、符,判断如果是字母,则输出该字母,实例,语法结构if(比较/逻辑表达式)语句一;语句二;else语句三;语句四;,ifelse语句,输入字符,判断如果是字母,则输出该字母;否则提示输入非字母,实例,语法结构if(比较/逻辑表达式)语句一;语句二;else if(比较/逻辑表达式)语句三;语句四;,ifelse if语句,if(比较/逻辑表达式)语句一;语句二;else if(比较/逻辑表达式)语句三;语句四;else语句五;语句六;,输入字符,判断如果是小写字母,显示对应大写字母;如果是大写字母,显示对应小写字母输入字符,判断如果是小写字母,显示对应大写字母;否则如果是大写字母,显示对应小写字

4、母输入字符,判断如果是小写字母,显示对应大写字母;否则如果是大写字母,显示对应小写字母;否则显示输入非字母输入字符,判断如果是小写字母,显示对应大写字母;否则如果是大写字母,显示对应小写字母;否则如果是数字,显示该数字值;,实例,if 分支结构支持分支嵌套,嵌套使用时要注意ifelse 的配对,If使用注意!,例:if(a=b)if(b=c)printf(a=b=c);else printf(a!=b);,修改后:if(a=b)if(b=c)printf(a=b=c);else printf(a!=b);,加 配对,配对的if-else格式要一致,增强可读性,语法结构,switch语句,用于多

5、分支选择例如:根据控制台输入的字符17,显示星期 swich(ch)case 1:printf(“星期一n”);break;default:printf(“输入非法”);break;,switch应用实例,漏掉某个break会怎么样?case命中后会一直执行,直到遇到第一个break才结束switch,switch应用注意!,条件表达式,一般形式:expr1?expr2:expr3执行过程功能:相当于条件语句,但具有返回值实例:int a=20,b=10;printf(“max is%dn”,a b?a:b);,实验2-4:分支流程控制1、将学生分数按标准分为优、良、中、差四个级别;2、swi

6、tch实现从控制台获得一个字符输入,如果输入 为m,显示”good moning”;如果输入为a,显示”good afternoon”;如果输入为n,显示”good night”;其他字符则显示“do nothing”;3、实现猜拳游戏:模拟两个玩家出拳(石头、剪刀、布),判断胜、平、负。,上机实验,课程安排,什么是流程控制顺序流程结构分支流程结构循环流程结构,循环流程结构,C语言可实现循环的语句:1、while 语句2、do while 语句3、for 语句4、用goto 和 if 构成循环(永远不要使用),循环语句种类,语法结构:,while(表达式)循环体语句;,执行流程:,while语

7、句,while实例,1、循环打印数值11002、计算1100的累加值:,语法结构:,do 循环体语句;while(表达式);,执行流程:,dowhile语句,特点:至少执行一次循环体,dowhile实例,1、循环打印数值11002、计算1100的累加值:,while循环使用注意,1、死循环 while(1)语句;2、while(0)与do while(0)在做什么?3、break退出循环 while(1)if(表达式)break;语句;,do 语句;while(1);do if(表达式)break;语句;while(1),语法结构:,for(expr1;expr2;expr3)循环体语句;,执

8、行流程:,for语句,特点:对于预先知道循环次数时通常用for,for实例,1、循环打印数值11002、计算1100的累加值:,for循环使用注意,1、死循环 for(;)语句;2、for变体 for(;i=100;i+)for(;i=100;)3、break退出循环 for(;)if(表达式)break;语句;,循环扩展话题,1、循环嵌套,(1)for()for().,(2)while()do while();.,实例:如何打印4x4个星号(*)?,循环扩展话题,1、break与continuebreak:终止并跳出最近一层的结构continue:结束本次循环,跳过循环体中尚未执行的语句,进

9、行下一次是否执行循环体的判断,实例:从控制台输入整数,求前10个正整数的和,循环扩展话题,3、关于goto如果要直接退出外层循环怎么办?goto+if 也能实现循环goto的实际应用:统一出口!,goto 语句标号;.标号:语句;,循环扩展话题,4、关于循环效率在多重循环中,如果有可能,应当将最长的循环放在最内层,最短的循环放在最外层,以减少CPU跨切循环层的次数,for(row=0;row100;row+)for(col=0;col5;col+)sum=sum+arowcol;,for(col=0;col5;col+)for(row=0;row100;row+)sum=sum+arowcol;,循环扩展话题,4、关于循环效率提高代码执行效率往往是以减低可读性为代价的,/*代码A*/for(i=0;iN;i+)if(condition)DoSomething();else DoOtherthing();,/*代码 B*/if(condition)for(i=0;iN;i+)DoSomething();else for(i=0;iN;i+)DoOtherthing();,实验2-5:循环流程控制1、打印100200之间的所有素数。2、在控制台上打印图形:3、百钱买百鸡:100钱买100鸡:公鸡1只5钱,母鸡1只 3钱,小鸡3只1钱。公鸡、母鸡、小鸡分别能买多少只?,上机实验,

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 生活休闲 > 在线阅读


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号