第4章流程控制.ppt

上传人:王** 文档编号:606949 上传时间:2023-12-08 格式:PPT 页数:61 大小:1.04MB
下载 相关 举报
第4章流程控制.ppt_第1页
第1页 / 共61页
第4章流程控制.ppt_第2页
第2页 / 共61页
第4章流程控制.ppt_第3页
第3页 / 共61页
第4章流程控制.ppt_第4页
第4页 / 共61页
第4章流程控制.ppt_第5页
第5页 / 共61页
第4章流程控制.ppt_第6页
第6页 / 共61页
第4章流程控制.ppt_第7页
第7页 / 共61页
第4章流程控制.ppt_第8页
第8页 / 共61页
第4章流程控制.ppt_第9页
第9页 / 共61页
第4章流程控制.ppt_第10页
第10页 / 共61页
亲,该文档总共61页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述

《第4章流程控制.ppt》由会员分享,可在线阅读,更多相关《第4章流程控制.ppt(61页珍藏版)》请在优知文库上搜索。

1、 4-1 4-1 结构化程序设计结构化程序设计 4-2 C4-2 C语句概述语句概述 4-3 4-3 选择语句选择语句 4-4 4-4 循环语句循环语句 4-5 4-5 辅助控制语句辅助控制语句 4-6 4-6 习题习题 结构化程序设计思想结构化程序设计思想 算法算法 传统流程图表示的三种结构传统流程图表示的三种结构 N/SN/S方框图表示的三种结构方框图表示的三种结构 小结小结4-1 结构化程序设计结构化程序设计 4.1.14.1.1 结构化程序设计结构化程序设计 思想思想任何程序都可以用三种基本结构表示,即用顺序任何程序都可以用三种基本结构表示,即用顺序(Composition)(Comp

2、osition)、选择、选择(Alternation)(Alternation)和循环和循环(Iteration)(Iteration)结结构来表示。构来表示。这三种结构反复组合、嵌套构成的程序称为结构化程序。这三种结构反复组合、嵌套构成的程序称为结构化程序。顺序结构的程序流程是按照语句的顺序依次执行;选择顺序结构的程序流程是按照语句的顺序依次执行;选择结构是根据给定的条件进行判断,由判断结构决定执行两结构是根据给定的条件进行判断,由判断结构决定执行两支或多支程序段中的一支;循环结构是在给定条件成立的支或多支程序段中的一支;循环结构是在给定条件成立的情况下,反复执行某个程序段。情况下,反复执行

3、某个程序段。优点优点结构化程序层次分明、结构清晰、有效地改善了程序的结构化程序层次分明、结构清晰、有效地改善了程序的可靠性,从而大大地提高了程序设计的质量和效率可靠性,从而大大地提高了程序设计的质量和效率。4-1 概述概述员工工资管理系统员工工资管理系统税率计算税率计算员工福利员工福利员工出勤记录员工出勤记录保险费保险费退休金退休金4-1 结构化程序设计结构化程序设计自顶向下,逐步求精自顶向下,逐步求精 4.1.24.1.2 算法算法 “算法算法”是为解决一个具体问题而采取的确定的有限的是为解决一个具体问题而采取的确定的有限的操作步骤。操作步骤。(数据结构)(算法)(数据结构)(算法)程序程序

4、 N NWirthWirth 算法的表示方法:算法的表示方法:传统的流程图传统的流程图 N/SN/S方框图方框图 自然语言自然语言 伪码伪码 问题求解图(问题求解图(PADPAD)明确问题明确问题利用某种语言利用某种语言描述算法描述算法设计算法设计算法4-1 结构化程序设计结构化程序设计 4.1.3 4.1.3 传统流程图表示的三种结构传统流程图表示的三种结构开始开始/结束框结束框一般处理框一般处理框判断框判断框输入输入/输出框输出框流程线流程线连接符连接符4-1 结构化程序设计结构化程序设计 4.1.34.1.3 传统流程图表示的三种结构传统流程图表示的三种结构 顺序结构顺序结构(Compo

5、sition)(Composition)AB4-1 结构化程序设计结构化程序设计 4.1.3 4.1.3 传统流程图表示的三种结构传统流程图表示的三种结构 选择结构选择结构(Alternation)(Alternation)AB条件条件P成立成立不成立不成立4-1 结构化程序设计结构化程序设计 4.1.34.1.3 传统流程图表示的三种结构传统流程图表示的三种结构 循环结构循环结构(Iteration)(Iteration)不成立不成立条件条件PA成立成立成立成立A条件条件P不成立不成立(1)当型)当型(2)直到型)直到型4-1 结构化程序设计结构化程序设计实例实例1 1:计算:计算1+2+3

6、+1+2+3+100+100的值的值i=i+1s=s+i开始开始NY循环变量循环变量i 置置1累加器累加器s 置置0i=100?结束结束输出输出s4-1 结构化程序设计结构化程序设计 这是一款意大利生产的多功能厨具这是一款意大利生产的多功能厨具|请猜价格!请猜价格!600答案是:答案是:720低了!低了!800750700高了!高了!高了!高了!正确!正确!这是一款瑞士生产的多功能刀具这是一款瑞士生产的多功能刀具|请猜价格!请猜价格!600高了!高了!500高了!高了!时间到!时间到!1个商标个商标720低了!低了!答案是:答案是:4284-1 结构化程序设计结构化程序设计实例实例2 2:幸运

7、:幸运5252“幸运幸运5252”的传统流程图的传统流程图否否是是是是是是否否否否否否是是时间到?时间到?输出产品特点输出产品特点新产品?新产品?开始开始计时计时商标数清商标数清0猜对了?猜对了?猜高了?猜高了?输入猜想价格输入猜想价格输出输出“高了!高了!”输出输出“正确!正确!”输出输出“低了!低了!”累计商标数累计商标数结束结束输出商标数输出商标数输出输出“时间到!时间到!”传统流程图的优缺点传统流程图的优缺点 优点:形象直观,各种操作一目了然,不会优点:形象直观,各种操作一目了然,不会产生产生“歧义性歧义性”,便于理解,算法出错时容,便于理解,算法出错时容易发现,并可直接转化为程序。易

8、发现,并可直接转化为程序。缺点:所占篇幅较大,由于使用流程线,过缺点:所占篇幅较大,由于使用流程线,过于灵活,不受约束,使用者可使流程线任意于灵活,不受约束,使用者可使流程线任意转移,从而造成程序阅读和修改的困难,不转移,从而造成程序阅读和修改的困难,不利于结构化程序的设计。利于结构化程序的设计。4-1 结构化程序设计结构化程序设计 4.1.44.1.4 N/S N/S方框图方框图 N/SN/S方框图是由美国学者方框图是由美国学者I INassiNassi和和B BSchneiderman Schneiderman 于于19731973年提出的。年提出的。N/SN/S方框图的重要特点就是完全取

9、消了流程线,方框图的重要特点就是完全取消了流程线,这样,算法被迫只能顺序执行,从而避免了流这样,算法被迫只能顺序执行,从而避免了流程的任意转向,保证了程序的质量。尤其适合程的任意转向,保证了程序的质量。尤其适合结构化程序的设计。结构化程序的设计。N/SN/S方框图的另一个优点是既形象直观,又节方框图的另一个优点是既形象直观,又节省篇幅。省篇幅。4-1 结构化程序设计结构化程序设计4-1 结构化程序设计结构化程序设计 4.1.44.1.4 N/S N/S方框图方框图 顺序结构顺序结构(Composition)(Composition)AB4-1 结构化程序设计结构化程序设计 4.1.44.1.4

10、 N/S N/S方框图方框图 选择结构选择结构(Alternation)(Alternation)AB条件条件P P成立成立不成立不成立4-1 结构化程序设计结构化程序设计 4.1.44.1.4 N/S N/S方框图方框图 循环结构循环结构(Iteration)(Iteration)A当当P成立成立A直到直到P成立成立(1)当型)当型(2)直到型)直到型实例实例1 1的的N/SN/S方框图方框图累加器累加器s 置置0循环变量循环变量i 置置1i=i+1s=s+ii=100?输出输出s4-1 结构化程序设计结构化程序设计 表达式语句表达式语句 表达式;表达式;赋值语句赋值语句 i=10;i=10

11、;函数调用语句函数调用语句 printf(Hello!n);printf(Hello!n);流程控制语句流程控制语句 选择选择 ifelse,elseif,switchcaseifelse,elseif,switchcase 循环循环 for,while,dowhilefor,while,dowhile 辅助控制辅助控制 break,continue,goto,returnbreak,continue,goto,return 空语句空语句 ;什么也不干什么也不干 for(i=1;i5000;i+);for(i=1;i5000;i+);延时延时 for(i=0;i100;ai+=0);for(i

12、=0;ib)t=a;a=b;b=t;if(ab)t=a;a=b;b=t;if(ac)t=a;a=c;c=t;if(ac)t=a;a=c;c=t;if(bc)t=b;b=c;c=t;if(bc)t=b;b=c;c=t;printf(%5.2f=%5.2f=%5.2fn,a,b,c);printf(%5.2f=%5.2f=%5.2fn,a,b,c);4.3.1 if4.3.1 if 语句语句 格式:格式:if(表达式表达式)语句;语句;说明:说明:一般语言,一般语言,if 后是关系或逻辑表达式,而后是关系或逻辑表达式,而C无要求无要求 if 只是测试表达式的值,当表达式的值为非只是测试表达式的值,

13、当表达式的值为非0时,执行语句时,执行语句 if(表达式表达式)if(表达式表达式!=0)if(!表达式表达式)if(表达式表达式=0)“语句语句”为一条语句或复合语句为一条语句或复合语句4-3 选择语句选择语句 4.3.2 4.3.2 ifelse ifelse 语句语句 格式:格式:if(if(表达式表达式)语句语句1 1;else else 语句语句2 2;说明:说明:n 表达式仍为一般表达式,当表达式非表达式仍为一般表达式,当表达式非0 0时,执行时,执行语句语句1 1,否则,执行语句,否则,执行语句2 2n “语句语句1 1”、“语句语句2 2”均为一条语句或复合语句均为一条语句或复

14、合语句4-3 选择语句选择语句 根据需要交换两个变量的值根据需要交换两个变量的值#include main()int a,b,x,ch;printf(Enter two integers:);scanf(%d%d,&a,&b);printf(Swap?(y/n):);ch=getchar();if(ch=y|ch=Y)x=a;a=b;b=x;printf(a=%d,b=%d,a,b);else printf(No swap!n);加上加上就行了!就行了!if(n0)if(n0)if(ab)z=a;if(ab)z=a;else z=b;else z=b;4-3 选择语句选择语句要想在要想在n=0

15、n0)if(n0)if(ab)z=a;if(ab)z=a;else z=b;else z=b;什么时候执行什么时候执行z=b;z=b;?太简单了!太简单了!elseelse总是与总是与其上最近的且未与其他其上最近的且未与其他elseelse配对的配对的if if 配对,因配对,因此此n0n0并且并且a=bamagic)if(guessmagic)printf(printf(“Too high!nToo high!n”););else else printf(Too low!n printf(Too low!n”););4-3 选择语句选择语句main()main()int magic=200,

16、guess;int magic=200,guess;printf(printf(“Please guess a magic number:Please guess a magic number:”););scanf(%d,&guess);scanf(%d,&guess);if(guess=magic)if(guess=magic)printf(printf(“Right!nRight!n”););else if(guessmagic)else if(guessmagic)printf(printf(“Wrong!Too big!nWrong!Too big!n”););else else printf(Wrong!Too small!n printf(Wrong!Too small!n”););猜数数游戏:由计算机猜数数游戏:由计算机“想想”一个数请人猜,若猜对了则给一个数请人猜,若猜对了则给出提示出提示“RightRight”,否则提示,否则提示“WrongWrong”,并告诉人是大还是小,并告诉人是大还是小了?了?4-3 选择语句选择语句输入学号及成绩,并根据成绩定等级输入学号及成

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

当前位置:首页 > 管理/人力资源 > 咨询培训

copyright@ 2008-2023 yzwku网站版权所有

经营许可证编号:宁ICP备2022001189号-2

本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!