第3章结构化程序设计1207.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第3章结构化程序设计1207.doc

第3章结构化程序设计 学习目标 ?理解算法的概念 ?能够使用流程图画出顺序、选择、循环三种语句的执行流程 ?要求熟练使用if、switch语句判断各种选择情况以及嵌套使用 ?熟练运用while、do-while for三种循环结构的思想解决实际问题 ?熟练应用break、continue、goto语句与循环语句的搭配使用 前刖的章节一直在介绍C语言的?木语法知识,然而仅仅依靠这些语法知识还不能编写出完整 的程序。在程序屮,通常需要加入业务逻辑,并根裾业务逻辑关系对程序的流程进行控制。木章将 针对程序设计的灵魂——算法以及C语言中最基本的三种程序流程进行讲解。 3.1算法一一程序设计的灵魂 3.1.1算法的概念 假如有一张对称的桌子和无限多大小相同的硬币,有两个人轮流往桌子上放硬币,规定硬币不 可以重叠,但可以边贴边放置。最后谁放不下谁就输了。假设让你笫一个放置,你如何做冰能保证 白己肯定蠃呢?明确了 “做什么”,接下来就是寻求解决办法。首先自己赢的话需要在己没地方 放硬币之前,对方就应该没冇地方放硬币了,从这分析可以想到,我们的行为和对方的行为应该冇 一定的联系性。于是可以得到一个解决办法,首先在桌子中央,放置硬币,接下来等对方放置硬币 后,只需要在他的对称位置放就可以了,只要他可以放,那么对称位置一定还有空间,直至他没地 方放了,我们就赢了。 这是生活中一个运用智慧解决M题的例子,学4编程也是为了解决M题的。那么程序是什么? 程序是为完成一项特定任务而用某种语言编写的一组指令序列。一个程序应当包含以下两方的内 容: 对数据的描述:在程序中指定用到哪些数椐以及这些数裾的类型和数据的组织形式,这就 是数据结构(data structure)。 对数据操作的描述:即操作步骤,也就是兑法(algorithm)。 著名计算机科学家沃思(Nikiklaus Wirth)提出了一个程序公式: 程序=数据结构+算法 其中算法是一个程序的灵魂,直到今天,这个公式对于过程化程序來说依然是适用的。 算法有三种种较为常用的表示方法:伪代码法、N-S结构化流程图和流程图法。在以后的学习 屮,木书较多地用到了流程图这种描述方法。 3.1.2流程 3.1.2流程 处坪和述榕厶流程图是描述14题处理歩骤的一种常用图形工具,它是由一些图框和流程线组成的。使用流程 图描述闷题的处理步骤形象直观、便于阅读。岡流程图吋必须按照功能选川相放的流程图符号,常 用的流程阁符号如阁3-1所示。 处坪和 述榕厶 图3-1 图3-1 I冬13-1所示的流程阁符号中,列举了四个阁桐、一个流程线和一个连接点,具体说明如卜\ 起止框用于表示流程的开始或结朿; 输入/输出框用平行叫边形表示,在平行叫边形内可以写明输入或输出的内客; 判断桐川菱形表示,它的作川足对条件进行判断,根据条件是否成立來决定如何执行后续 的操作; 处理框用矩形表示,它代表程序中的处理功能,如算术运算和赋值等; 流程线用实心中脚箭头或直线表示,可以连接不同位a的图枢,流程线的标准流向足从左 到右和从上到不,可川直线表示,非标准流向的流程线应使用箭头指示方向; 连接点用關形表示,用于流程閔的延续。 通过上而的讲解,读者对流程阁符号有了简单的认识,接卜*来先来看一个简单的流程阁,如阁 3-2所示。 图3-2 求三个数屮的最小值 图3-2表示的是一个求三个数中的最小值的流程图,下面针对该流程图中的执行顺序进行说 明,具体如下: 第1步:程序开始; 第2少:进入输入/输出框,输入三个变撒位x,y,z; 第3步:进入判断框,判断x〉y是否成立,如果是成立,则进入左边的判断框,继续判断y〉z 是否成立;否则进入右边的判断框,判断是否成立; 第4步:进入下一层判断框。如果进入的是左边的判断框,判断是否成立,如果成立,则 进入左边的处理桐,得出最小值是z:如果不成立,则进入右边的处理框,得出最小值为y。 如果进入的是右边的判断框,则判断x〉z是否成立,如果成立,则进入左边的处理 框, 得出最小值是z;如果不成立,则进入右边的处理框,得出最小值是X。 第5步:进入输出框,输出结果; 第6步:进入结束框,程序运行结束。 学流程图可以有效的进行结构化程序设计,基木的流程结构柯3种,即顺序结构、选择结 构和循环结构。它们可以编写各种S杂程序。在接下来的小节中,将分别讲解这3种某木流程结 构,而流程图可以更好的理解和学习这些流程结构语句。 3.2 C语言的基本语句 经过阁3-2的流程分析,理清了思路,那么编程就足信手拈來,似是,再简单的程序也得一句 一句的写岀。如果把写程序和写小说类比,变跫常跫等可以看成是字和词,函数可以看成是一个段 落,运算符等可以看作是字词的组合方式(规则),那么,字词组成的川子就是小说的最小独立单 元,表达了一定

文档评论(0)

ggkkppp + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档