c语言程序设计流程图详解_第1页
c语言程序设计流程图详解_第2页
c语言程序设计流程图详解_第3页
免费预览已结束,剩余1页可下载查看

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、WORD格式c 语言程序设计流程图详解介绍常见的流程图符号及流程图的例子。本章例 1 - 1 的算法的流程图如图1 - 2 所示。本章例1 - 2 的算法的流程图如图1 - 3 所示。在流程图中, 判断框左边的流程线表示判断条件为真时的流程,右边的流程线表示条件为假时的流程,有时就在其左、右流程线的上方分别标注“真 、 “假 或 “T、“F或“Y、“N注“真、“假或“T、“F或“Y、“N专业资料整理WORD格式另外还规定,流程线是从下往上或从右向左时,必须带箭头,除此以外,都不画箭头,流程线的走向总是从上向下或从左向右。2. 算法的构造化描述早期的非构造化语言中都有go to 语句,它允许 程

2、序 从一个地方直接跳转到另一个地方去。执行这样做的好处是程序 设计十分方便灵活, 减少了人工复杂度, 但其缺点也是十分突出的,一大堆跳转语句使得程序 的流程十分复杂紊乱, 难以看懂也难以验证 程序 的正确性, 如果有错,排起错来更是十分困难。这种转来转去的流程图所表达的混乱与复杂,正是软件危机中程序 人员处境的一个生动写照。而构造化程序 设计,就是要把这团乱麻理清。经过研究,人们发现,任何复杂的算法,都可以由顺序构造、选择分支构造和循环构造这三种根本构造组成,因此,我们构造一个算法的时候,也仅以这三种根本构造作为“建筑单元 ,遵守三种根本构造的标准,根本构造之间可以并列、 可以相互包含, 但不

3、允许穿插,不允许从一个构造直接转到另一个构造的内部去。正因为整个算法都是由三种根本构造组成的,就像用模块构建的一样,所以构造清晰,易于正确性验证,易于纠错,这种方法,就是构造化方法。遵循这种方法的程序 设计,就是构造化 程序 设计。相应地,只要规定好三种根本构造的流程图的画法 ,就可以画出任何算法的流程图。(1) 顺序构造顺序构造是简单的线性构造,各框按顺序执行。其流程图的根本形态如图1 - 4所示,语句的执行顺序为: ABC 。(2) 选择分支构造这种构造是对某个给定条件进展判断,条件为真或假时分别执行不同的框的内容。其根本形状有两种,如图 1-5 a 、b所示。图1-5 a 的执行序列为:

4、当条件为真时执行A ,否那么执行 B ;图 1 - 5 b 的执行序列为:当条件为真时执行A ,否那么什么也不做。(3) 循环构造循环构造有两种根本形态:while 型循环和 do - while型循环。a. while型循环如图 1-6 所示。其执行序列为:当条件为真时,反复执行 A,一旦条件为假,跳出循环,执行循环紧后的语句。b. do-while型循环如图 1-7 所示。专业资料整理WORD格式执行序列为:首先执行A ,再判断条件,条件为真时,一直循环执行A,一旦条件为假,结束循环,执行循环紧后的下一条语句。在图 1 - 6 、图 1 - 7 中, A 被称为循环体,条件被称为循环控制条

5、件。要注意的是:1) 在循环体中,必然对条件要判断的值进展修改,使得经过有限次循环后,循环一定能完毕,如图 1 - 3 中的 i = i - 1 。2) 当型循环中循环体可能一次都不执行,而直到型循环那么至少执行一次循环体。3) 直到型循环可以很方便地转化为当型循环,而当型循环不一定能转化为直到型循环。例如,图 1-7 可以转化为图 1-8。七,用 N-S 图描述算法N - S 图是另一种算法表示法,是由美国人I . Nassi 和 B.Shneiderman共同提出的, 其根据是:既然任何算法都是由前面介绍的三种构造组成,所以各根本构造之间的流程线就是多余的,因此, N - S 图也是算法的

6、一种构造化描述方法。N - S 图中,一个算法就是一个大矩形框, 框内又包含假设干根本的框, 三种根本构造的 N - S 图描述如下所示:1. 顺序构造如图 1 - 9 所示,执行顺序先A 后 B。2. 选择构造对应于图1 - 5 的 N - S 图为图 1 - 1 0 。图 1-10 a) 条件为真时执行A,条件为假时执行B 。图 1-10b 条件为真时执行 A,为假时什么都不做。专业资料整理WORD格式3. 循环构造1) while 型循环的N - S图如图1-11所示,条件为真时一直循环执行循环体A ,直到条件专业资料整理WORD格式为假时才跳出循环。2) do-while型循环的N -

7、 S图如图1-12,一直循环执行循环体A ,直到条件为假时才跳出专业资料整理WORD格式循环。专业资料整理WORD格式本章例 1-1 的N-S 图如图 1-13 ,例 1-2 的 N-S 图如图 1-14 。应该说, N-S 图比流程图更直观易懂,而且相对简练一些。八,用 PAD 图描述算法PAD Problem Analysis Diagram,是近年来在软件开发中被广泛使用的一种算法的图形表示法,与前述的流程图、N - S图相比,流程图、N - S图都是自上而下的顺序描述,而PAD 图除了自上而下以外,还有自左向右的展开,所以,如果说流程图、N - S 图是一维的算法描述的话,那么PAD 图就是二维的,它能展现算法的层次构造,更直观易懂。下面是 PAD 图的几种根本形态:1. 顺序构造:如图 1-15 所示。2. 选择构造(1) 单分支选择,条件为真执行A,如图 1-16 a 。(2) 两分支选择,如图 1-16 b) ,条件为真执行 A,为假执行 B 。(3) 多分支选择, 如图 1-16 c) ,当 I = I1 时执行 A, = I2 时执行 B,I = I3 时执行 C,I = I4时执行。3. 循环构造如图 1 - 1 7

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论