《C语言程序设计(》课件_第1章 程序设计基础.ppt
1.3.2结构化程序设计方法
结构化程序设计方法是为了克服软件危机
在上世纪六十年代,随着计算机的发展,软件规模和复杂性的不断增加,在大型软件开发工作中出现了许多问题,如软件开发的进度被推迟、成本超出预算等。人们开始认识到软件开发的复杂性,由此提出了“结构化程序设计方法”,旨在提高程序的可读性,保证软件的质量,降低软件的成本,提高软件开发和维护的效率。迄今为止,结构化程序设计方法仍然是一种广为使用的计算机软件开发方法。●结构化程序设计方法的目标是编写清晰、可读性好、易修改性强的程序。
●结构化程序设计方法要求程序仅由三种基本结构。而且,要求每个程序模块是单入口单出口的;程序中没有永远执行不到的语句,没有死循环即无终止的循环。
●结构化程序设计方法要求采用“模块化”的设计方法。模块化的思想就是“分而制之”,将一个复杂的任务,分解成若干个功能单一、相对独立的小任务来进行设计,每个小任务就是一个模块,每个模块由三种基本结构组成。模块的功能要独立、简单,这样才能使程序具有灵活性和可靠性。结构化程序设计过程采用“自顶向下,逐步求精”的策略。
自顶向下,是指模块的划分要从问题的顶层向下逐层分解、逐 步细化,直到最底层达到最简单的功能模块。
逐步求精,是指在将抽象问题分解为若干个相对独立的小问题 时,要逐级的由抽象到具体、由粗到细、由表及里进行细 化,直到将问题细化到可以用程序的三种基本结构来实施 为止。1.4程序设计风格
程序设计包含着程序员的大量个人行为,所以必定有个性化的一面。编程风格是指程序结构形式、行文方式的编写特点。编程风格实际上是一种编程原则,是根据软件技术发展需要提出来的,也是程序设计工作者实践经验的总结。高质量的程序必须具有良好的易读性、易理解性和易维护性,因此必须具有清晰、合理的结构、简明易懂的编码,直观标准的格式。正像内功深厚的武林高手出招往往平淡无奇一样,编程高手也不会使用奇门怪招。编程风格最重要的两条是简单和清晰。本节主要介绍编程过程中初学者主要应该注意的几个问题。1.4.1符号的命名
●符号的命名首先要符合源程序的语法规定,如长度不能超过 规定,使用规定的字符及数字等。更重要的是要见名知 意,容易理解。
●一般不要使用单个字母作符号名,试想如果一本小说里的人 和物都是以单个英文字母命名的,这样的小说还能读得 下去吗?有部分程序员喜欢用拼音给符号命名,其实许 多中国人尚且不懂拼音字母,用拼音命名的符号名怎么 能和世界接轨?怎么能走向世界?
●符号名应尽量用英文名词,这样就能达到见名知意的目的。●符号命名也要采用有经验的程序员已经形成的传统,比如宏 定义用大写字母表示如:PRICE;全局变量以大写字母 开头,如:Student、School;有的程序员在变量名前 加上变量类型的首字母,如*pflag表示flag是指针变量、 ilength表示length是整型变量,对增加程序的易读性也 很有帮助。1.4.2程序文档
根据软件工程学的观点,软件不仅仅是数据结构+算法,还包括文档。文档是程序的重要部分。事实上,注释甚至要占到源程序篇幅的三分之一。
1.序言性注释
序言性注释是在程序或模块的开头为本程序或程序段做的说明。例如可以在每个函数的开头安排一个序,说明下列内容:
(1)标志(程序名、日期、版本号)。
(2)函数的用途,采用的方法(算法)及数据结构。
(3)使用方法。
(4)函数的开发历史和所做的改动。
(5)程序之外的参考文档。2.解释性注释(功能性注释)
一般插在程序正文中,经常写在程序语句之后,用“;”或“/*”与程序语句隔开,其目的是为阅读和理解程序提供解释说明,以便说明程序为什么要这样做以及做什么。解释性注释包括下列内容:
(1)对所定义的每一个变量和常量都要说明它们是什么以 及应如何使用。
(2)对程序的每一个段落(或代码块)都加以注释,简要 说明其目的和作用。
(3)指明程序每一重要部分的结束位置,如果该位置原来 不够明显的话。
(4)解释程序中使用的某种技巧或意义不够明确的语句, 最好不要使用这种意义不明确的语句。
(5)无论何时如果程序作了改动,要保证文档作相应的修 改。1.4.3源程序的书写格式
程序中的空格、空行以及缩格是文档的重要形式,它们可以明显地增加程序的易读性,使用户一眼就能判断出程序的哪些部分相互有关,何处会发生中断,以及每个循环包含哪些语句,或一个条件语句的每种选择包含哪些语句。1.4.4语句构造
构造语句是编写程序的一个主要任务。构造语句的基本原则是简单、直接。
1.最好一