《C语言PPT11.pptVIP

  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文档。上传文档
查看更多
C语言程序设计 第11章 C语言的模块化程序设计 2、结构化程序设计方法 结构化程序设计思想产生于20世纪60年代,是随着计算机的发展、硬件成本的急剧下降、软件规模和复杂性的不断增加而提出的一种至今仍广为使用的计算机软件开发技术。其目的是为了增加程序的可读性,保证程序的质量,降低软件成本,从而提高软件的生产和维护效率。 结构化程序由三种基本结构组成。 (1)顺序结构。 在本书第3章中介绍的如赋值语句、输入、输出语句都可构成顺序结构,当执行由这些语句构成的程序时,将按这些语句在程序中的先后顺序,逐条执行,没有分支,没有转移。 (2)分支结构。 在本书第4章中介绍的if?语句、switch语句都可构成分支结构。当执行到这些语句时,将根据不同的条件去执行不同的语句。 (3)循环结构 在本书第5章中介绍了for、while和do while三种不同的循环结构。它们将根据各自的条件,使同一组语句重复执行多次或一次也不执行。 实践证明,由三种基本结构组成的算法结构可以解决任何复杂的问题。由三种基本结构构成的算法称为结构化算法,由三种基本结构所构成的程序称为结构化程序。  我们应当掌握自顶向下、逐步细化的设计方法。这种设计方法的过程是将问题求解由抽象逐步具体化的过程。例如图11-1所示,最开始拿到的是一篇“论文”,这是一个很笼统而抽象的任务,经过初步考虑之后,把它分成3个大的部分,这就比刚才具体一些了,但还不够具体。这一步只是粗略地划分,称为“顶层设计”。然后一步步细化,依次称为第二层、第三层设计,直到不需要细分为止。用这种方法容易验证程序的正确性,在向下一层展开之前应仔细检查本层设计是否正确,只有上一层是正确的才能向下细化。如果每一层设计都没有问题,则整个算法就是正确的。由于每一层向下细化时都不太复杂,因此容易保证整个算法的正确性。检查时也是由上而下逐层检查,这样做,思路清晰,有条不紊地一步步进行,既严谨又方便。   结构化程序设计强调程序设计风格和程序结构的规范化,提倡清晰的结构。结构化程序设计的基本思路是,把一个复杂问题的求解过程分阶段进行,每个阶段处理的问题都控制在人们容易理解和处理的范围内。 具体说,采取以下方法保证得到结构化的程序。 ①自顶向下;②逐步细化;③模块化设计;④结构化编码。   在接受一个问题后应怎样着手进行呢?有两种不同的方法:一种是自顶向下,逐步细化;一种是自下而上,逐步积累。以写论文为例来说明这个问题。有的人胸有全局,先设想好整个论文分成哪几个部分,然后再进一步考虑每一部分分成哪几节,每一节分成哪几段,每一段应包含什么内容。  用这种方法逐步分解,直到作者认为可以将各小段表达为文字语句为止。这种方法就叫做“自顶向下,逐步细化”。 11.2 C语言对模块化程序设计的支持   在程序设计中常采用模块设计的方法,尤其是当程序比较复杂时,更有必要。在拿到一个程序模块(实际上是程序模块的任务书)以后,根据程序模块的功能将它划分为若干个子模块,如果嫌这些子模块的规模大,还可以划分为更小的模块。这个过程采用自顶向下的方法来实现。   程序中的子模块在C语言中常用函数来实现。   C语言程序是由函数组成的。设计C语言程序时,通常将一个大的程序按功能分成若干个较小的模块,每个模块编写成结构清晰、接口简单、容易理解的子程序,通常称这些具有某个特定功能的子程序为函数。这种方法叫模块化程序设计方法,用这种方法可建立公用模块、消除重复工作,提高程序开发效率。一个C程序可由一个主函数和若干个函数构成。由主函数调用其他函数,其他函数也可以互相调用。同一个函数可以被一个或多个函数调用任意多次。 11.2.1 内部变量、外部变量及其作用范围 1.内部变量   在一个函数内部或复合语句内部定义的变量是内部变量(或局部变量),函数形参表中定义的变量也属于内部变量。它只在本函数范围内有效,即只有本函数才能使用它们。因此,在函数内不能使用其他函数内定义的变量,不同函数内可以有同名的内部变量。 2.外部变量  程序的编译单位是源程序文件,一个源文件可以包含一个或若干个函数。在函数外定义的变量称为外部变量。外部变量的有效范围是从它定义的位置开始到本源文件结束,即位于外部变量的定义后面的所有函数都可以使用此变量。 11.2.2 变量的存储方式 上一节已介绍了,从变量的作用域(即从空间)角度来分,可以分为内部变量和外部变量。  可以从另一个角度,从变量值存在的时间(即生存期)角度来分,可以分为静态存储方式和动态存储方式。  所谓静态存储方式是指在程序运行期间分配固定的存储空间方式。而动态存储方式则是在程序运行期间根据需要进行动态的分配存储空间的方式。

文档评论(0)

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

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

1亿VIP精品文档

相关文档