设为首页 加入收藏

TOP

2011年计算机二级C语言精编教程第一章(3)
2014-11-08 22:00:05 来源: 作者: 【 】 浏览:34
Tags:2011年 计算机 二级 语言 精编 教程 第一

  1.3 结构化程序设计和模块化结构


  1.3.1 结构化程序


  结构化程序由三种基本结构组成。


  1.顺序结构。在本书第3章中将要介绍的如赋值语句、输入、输出语句都可构成顺序结构。当执行由这些语句构成的程序时,将按这些语句在程序中的先后顺序逐条执行,没有分支,没有转移。顺序结构可用图1.3所示的流程图表示,其中(a)是一般的流程图,(b)是N-S流程图。


  2.选择结构。在本书第4章中将要介绍的if语句、switch语句都可构成选择结构。当执行到这些语句时,将根据不同的条件去执行不同分支中的语句。选择结构可用图1.4所示的流程图表示,其中(a)是一般的流程图,(b)是N-S流程图。


  3.循环结构。在本书第5章中将介绍不同形式的循环结构。它们将根据各自的条件,使同一组语句重复执行多次或一次也不执行。循环结构的流程图如图1.5和图1.6所示,每个图中(a)是一般的流程图,(b)是N-S流程图。图1.5是当型循环流程图。当型循环的特点是:当指定的条件满足(成立)时,就执行循环体,否则就不执行。图1.6是直到型循环流程图。直到型循环的特点是:执行循环体直到指定的条件满足(成立)时就不再执行循环体。


  已经证明,由三种基本结构组成的算法可以解决J任何复杂的问题。由三种基本结构所构成的算法称为结构化算法;由三种基本结构所构成的程序称为结构化程序。


  例1.1 先后输人若干个整数,要求打印出其中最大的数,当输入的数小于0时结束。用N-S流程图表示算法。


  解题的思路是:先输人一个数,在没有其他数参加比较之前,它显然是当前最大的数,把它放到变量ma:中。让max始终存放当前已比较过的数中的最大值。然后输入第二个数,并与max比较,如果第二个数大于max,则用第二个数取代max中原来的值。如此先后输人和比较,每次比较后都将值大者放在max中,直到输入的数小于0时结束。最后max中的值就是所有输入数中的最大值。


  根据此思路,画出N-S流程图(见图1.7)。变量x用来控制循环次数,当x>0时,执行循环体;在循环体内进行两个数的比较和输入x值。从图1.7可见,在循环体的矩形框内包含一个选择结构。


  1.3.2 模块化结构


  当计算机在处理较复杂的任务时,所编写的程序经常由上万条语句组成,需要由许多人来共同完成。这时常常把这个复杂的任务分解为若干个子任务,每个子任务又分成很多个小子任务,每个小子任务只完成一项简单的功能。在程序设计时,用一个个小模块来实现这些功能,每个程序设计人员分别完成一个或多个小模块。我们称这样的程序设计方法为“模块化”的方法,由一个个功能模块构成的程序结构为模块化结构。


  由于把一个大程序分解成若干相对独立的子程序,每个子程序的代码一般不超过一页纸,因此对程序设计人员来说,编写程序代码变得不再困难。这时只需对程序之间的数据传递做出统一规范,同一软件可由一组人员同时进行编写,分别进行调试,这就大大提高了程序编制的效率。


  软件编制人员在进行程序设计的时候,首先应当集中考虑主程序中的算法,写出主程序后再动手逐步完成子程序的调用。对于这些子程序也可用调试主程序的同样方法逐步完成其下一层子程序的调用。这就是自顶向下、逐步细化、模块化的程序设计方法。


  C语言是一种结构化程序设计语言。它提供了兰种基本结构的语句;提供了定义“函数”的功能,在C语言中没有子程序的概念,它提供的函数可以完成子程序的所有功能;C语言允许对函数单独进行编译,从而可以实现模块化。另外,C语言还提供了丰富的数据类型。这些都为结构化程序设计提供了有力的工具。


  C语言辅导笔记:


】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
分享到: 
上一篇2011年计算机二级C语言精编教程第.. 下一篇2011年计算机二级C语言精编教程第..

评论

帐  号: 密码: (新用户注册)
验 证 码:
表  情:
内  容: