程序设计基础.ppt_第1页
程序设计基础.ppt_第2页
程序设计基础.ppt_第3页
程序设计基础.ppt_第4页
程序设计基础.ppt_第5页
已阅读5页,还剩20页未读 继续免费阅读

下载本文档

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

文档简介

1、考点1:程序设计经历的阶段 考点2:良好的编程风格应注意的因素 考点3:结构化程序设计的原则 考点4: 结构化程序的基本结构 考点5: 结构化程序设计的要素 考点6: 面向对象的方法 考点7: 面向对象技术的基本概念 考点8: 对象基本特征,考点1:程序设计经历的阶段 程序设计是一门技术,需要相应的理论技术、方法和来支持。 程序设计主要经历了面向过程设计和面向对象的程序设计阶段。,考点2:良好的编程风格应注意的因素 1)源程序的文档化 符号名的命名规则 正确的程序注释 视觉组织 2)数据说明的方法 数据说明的次序规范化 说明语句中变量安排有序化 使用注释来说明复杂数据的结构,考点2:良好的编程

2、风格应注意的因素 3)语句的结构 在一行内只写一条语句 程序编写应优先考虑清晰性 在保证程序正确的基础上再要求提高效率 避免使用临时变量而使程序的可读性下降 尽量使用库函数 避免采用复杂的条件语句 尽量减少使用“否定”条件语句 数据结构要有利于程序的简化 利用信息隐蔽,确保每个模块的独立性 不要修补不好的程序,要重新编写,考点2:良好的编程风格应注意的因素 4)输入输出 对输入的数据要检查数据的合法性 检查输入项的各种重要组合的合理性 输入格式要简单,使得输入的步骤和操作尽可能简单 输入数据时,应允许使用自由格式 应允许缺省值 输入一批数据时,最好使用输入结束标志 在以交互式输入/输出方式进行

3、输入时,要在屏幕上使用提示符明确提示输入的请求,同时在数据输入过程中和输入结束时,应在屏幕上给出状态信息,考点3:结构化程序设计的原则 1)自顶向下、逐步细化的设计过程 自顶向下、逐步细化的设计过程,包括以下两个方面 : 将一个复杂问题的解法分解和细化成由若干模块组成的层次结构。 将一个模块的功能逐步分解细化为一系列的处理步骤,直到某种程序设计语言的语句或某种机器指令。 自顶向下、逐步细化的设计过程具有以下两条优点 :符合人们解决复杂问题的普遍规律,可以显著提高程序设计的效率。 用先全局后局部、先整体后细节、先抽象后具体的方法设计出的程序具有清晰的层次结构,容易阅读和理解。,考点3:结构化程序

4、设计的原则 2)模块化程序设计 在进行模块化程序设计时,应重点考虑以下两个问题 : 按什么原则划分模块 ? 如何组织好各模块之间的联系 ? (1) 按功能划分模块优点 : 可读性和可理解性都比较好。 各模块间的接口关系比较简单 当要修改某一功能时,只涉及一个模块。 其他应用程序可以充分利用已有的一些模块。 (2) 按层次组织模块 在按层次组织模块时,一般上层模块只指出“做什么”,只 有在最底层的模块中才精确地描述“怎么做”。 3)避免使用goto语句,考点4:结构化程序的基本结构 结构化程序设计要求把程序的结构限制为顺序、选择和循环 3 种基本结构,以便提高程序的可读性。 顺序结构: 选择结构

5、 循环结构,考点5:结构化程序设计的要素 结构化程序设计中,要注意把握如下要素: 使用程序设计语言的三种控制结构程序的控制结构。 选用的控制结构只能有一个入口和一个出口。 程序语言组成容易识别的块,每块只有一个入口和一个出口。 复杂结构应该用嵌套的基本控制结构来实现。 尽量避免GOTO语句的使用。,考点6:面向对象的方法 面向对象技术的特点与传统的结构化分析与设计技术相比,面向对象技术具有许多明显的优点: (1) 可重用性好 (2) 可维护性好 (3) 与人类习惯的思维方法一致 (4) 稳定性好 (5)易于开发大型软件产品,考点7:面向对象技术的基本概念 在面向对象技术中,采用统一框架,既可用

6、于分析,也可用于设计和具体实现。 面向对象技术主要包括3个方面: 面向对象的分析(即需求分析)(OOA) 面向对象的设计(OOD) 面向对象的实现(OOI),考点7:面向对象技术的基本概念 (1) 对象(object):客观世界由实体及其实体之间的联想所组成,其中客观世界中的实体称为问题域的对象。例如,一本书、一辆车等都是一个对象。 (2) 类(class):类描述的是具有相同性质的一组对象。例如,每本具体的书是一个对象,而这些具体的书都有共同的性质,它们都属于更一般的概念“书”这一类对象。一个具体对象称为类的实例。 (3) 方法(method):方法是允许作用于某个对象上的各种操作。,考点7

7、:面向对象技术的基本概念 (4) 消息(message):消息用来请求对象执行某一处理或回答某些信息的要求。 (5) 继承(inheritance):继承表示类之间的相似性的机制。如果类X继承类Y,则X为Y的子类,Y为X的父类(超类)。例如,“车”是一类对象,“小轿车”、“卡车”等都继承了“车”类的性质,因而是“车”的子类。 (6) 封装(encapsulation):封装是一种信息隐蔽技术,目的在于将对象的使用者和对象的设计者分开。用户只能见到对象封装界面上的信息,不必知道实现的细节。封装一方面通过数据抽象,把相关的信息结合在一起,另一方面也简化了接口。,考点8:对象基本特征 (1) 模块性

8、:一个对象是一个可以独立存在的实体。各个对象之间相对独立,相互依赖性小。 (2) 继承性和类比性:可以把具有相同属性的一些不同对象归类,称为对象类。还可以划分类的子类,构成层次系统,下一层次的对象继承上一层次对象的某些属性。 (3) 动态连接性:对象与对象之间可以相互连接构成各种不同的系统。对象与对象之间所具有的传送消息的能力与机制称为动态连接性。 (4) 易维护性:任何一个对象是一个独立的模块,无论是改善其功能还是改变其细节均局限于该对象内部,不会影响到其他的对象。 (5)多态性:,一、选择题 结构化程序设计的主要特点是 A) 模块化 B) 每个控制结构具有封装性 C) 每个控制结构具有独立

9、性 D)每个控制结构只有一个入口和一个出口 在模块化程序设计中 , 按功能划分模块的原则是 () 。 A) 各模块的功能尽量单一 , 且各模块之间的联系尽量少 B) 各模块的功能尽量单一 , 且各模块之间的联系尽量紧密 C) 各模块应包括尽量多的功能 D) 各模块应包括尽量多的输入输出操作,经典习题习题演练,答案,DA,下列叙述中 , 正确的是 () A) 在模块化程序设计中 , 一个模块应尽量多地包括与其他模块联系的信息 B) 在自顶向下、逐步细化的设计过程中 , 首先应设计解决问题的每一个细节 C) 在模块化程序设计中 , 一个模块内部的控制结构也要符合结构化原则 D) 在程序设计过程中

10、, 不能同时采用结构化程序设计方法与模块化程序设计方法,答案,C,下列叙述中 , 正确的是 () A) 在面向对象的程序设计中 , 各个对象之间相对独立 , 相互依赖性小 B) 在面向对象的程序设计中 , 各个对象之间具有密切的联系 C) 在面向对象的程序设计中 , 各个对象都是公用的 D) 上述 3 种说法都不对,答案,A,下列叙述中 , 正确的是 () A) 自己编写的程序主要是给自己使用的 B) 当前编写的程序主要是为当前使用的 C) 运行结果正确的程序一定具有易读性 D)上述 3 种说法都不对,答案,D,下列哪一项不是三种基本结构中的一种。 A)顺序结构 B) 选择结构 C) 并行结构

11、 D) 重复结构 按照结构化程序设计原则和方法,下列叙述中正确的是 A)语言中所没有的控制结构,应该采用前后一致的方法来模拟。 B)基本结构在程序设计中不允许嵌套。 C)程序中绝对不要使用GOTO语句。 D)选择的结构只准有一个入口,但可以有多个出口。,答案,CA,下列哪一项方法不是说明面向对象的易于修改的特性? A)对象的封装性 B)继承机制 C)隐藏机制 D)多态性机制 在面向对象方法中,一个对象请求另一个对象为其服务和方式是通过发送 A)调用语句 B)命令 C)口令 D)消息,答案,CD,同样的消息被不同对象接受时可导致完全不同和行为,这种现象称为 A)多态性 B)继承性 C)重载性 D)封装性,答案,A,二、填空题 1. 符合结构化原则的 3 种基本控制结构为 : 顺序结构、选择结构和 。 2. 在面向对象的程序设计中 , 类描述的是具有相似性质的一组 。 3. 在面向对象的程序设计中 , 用来请求对象执行某一处理或回答某些信息的要求称为 。,答案,(循环结构) (对象) (消息),4一般来讲, 是指编写程序时所表现的特点、习惯和逻辑思路。 5 方法的基本原理是,使用现实世

温馨提示

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

评论

0/150

提交评论