计算二级公共基础知识 c语言,2019-02-22 计算机二级公共基础知识之程序设计基础...

参考资料:高教版《全国计算机等级考试二级教程——C语言程序设计》

程序设计方法与风格

就程序设计方法和技术的发展而言,主要经过了结构化程序设计和面向对象程序设计阶段。

一般来讲,程序设计风格是指编写程序时所表现出的特点、习惯和逻辑思路。程序设计风格是很重要的,因为程序设计风格会深刻地影响软件的质量和可维护性。可以认为,著名的“清晰第一,效率第二”的论点已成为当今主导的程序设计风格。

要形成良好的程序设计风格,主要应注重考虑以下因素:

源程序文档化

符号的命名:符号的命名应具有一定的实际含义。

程序注释:正确的注释能够帮助读者理解程序。注释一般分为序言性注释和功能性注释。

视觉组织:为了使程序结构一目了然,可以在程序中使用空格、空行、缩进等技巧使程序层次清晰。

数据说明的方法

数据说明的次序规范化:鉴于程序理解、阅读和维护的需要,使数据说明次序固定,可以使数据的属性容易查找,也有利于测试、排错和维护。

说明语句中变量安排有序化:当一个语句说明多个变量时,变量按照字母顺序排序为好。

使用注释来说明复杂的数据结构。

语句的结构

在一行内只写一条语句。

程序编写应优先考虑清晰性。

除非对效率有特殊要求,程序编写要做到清晰第一,效率第二。

首先要保证程序正确,然后才要求提高速度。

避免使用临时变量而使程序的可读性下降。

避免不必要的转移。

尽可能使用库函数。

避免采用复杂的条件语句。

尽量减少使用“否定”条件的语句。

数据结构要有利于程序的简化。

要模块化,使模块功能尽可能单一化。

利用信息隐蔽,确保每一个模块的独立性。

从数据出发去构造程序。

不要修补不好的程序,要重新编写。

输入和输出

输入和输出方式和格式应尽可能方便用户的使用。

对所有的输入数据都要检验数据的合法性。

检查输入项的各种重要组合的合理性。

输入格式要简单,以使得输入的步骤和操作尽可能简单。

输入数据时,应允许使用自由格式。

应允许缺省值。

输入一批数据时,最好使用输入结束标志。

在以交互式输入/输出方式进行输入时,要在屏幕上使用提示符明确提示输入的请求,同时在数据输入过程中和输入结束时,应在屏幕上给出状态信息。

当程序设计语言对输入格式有严格要求时,应保持输入格式与输入语句的一致性;给所有的输出加注释,并设计输出报表格式。

结构化程序设计

结构化程序设计的原则

结构化程序设计方法的主要原则可以概括为自顶向下,逐步求精,模块化,限制使用goto语句。

自顶向下

程序设计时,应先考虑总体,后考虑细节;先考虑全局目标,后考虑局部目标。

逐步求精

对复杂的问题,应设计一些子目标作过渡,逐步细化。

模块化

把程序要解决的总目标分解为分目标,再进一步分解为具体的小目标,把每一个小目标称为一个模块。

限制使用goto语句

结构化程序的基本结构与特点

顺序结构

选择结构

循环结构

按结构化程序设计方法设计出来的程序基友明显的优点:

程序易于理解、使用和维护。

提高了编程工作的效率。

结构化程序设计原则和方法使用

使用程序设计语言中的顺序、选择、循环等有限的控制结构表示程序的控制逻辑。

选用的控制结构只准许有一个入口和一个出口。

程序语句组成容易识别的块,每块只有一个入口和一个出口。

复杂结构应该用嵌套的基本控制结构进行组合嵌套来实现。

语言中所没有的控制结构,应该采用前后一致的方法来模拟。

严格控制goto语句的使用。

面向对象的程序设计

关于面向对象方法

面向对象方法的本质,就是主张从客观世界固有的事物出发来构造系统,提倡人类在现实生活中常用的思维方法来认认识、理解和描述客观事物,强调最终建立的系统能够映射问题域。

面向对象方法主要有以下优点:

与人类习惯思维方法一致。

稳定性好。

可重用性好。

易于开发大型软件产品。

可维护性好。

面向对象方法的基本概念

对象

对象是面向对象方法中最基本的概念。

对象可以用来表示客观世界中的任何实体,也就是说,应用领域中有意义的、与所要解决的问题有关系的任何事物都可以作为对象,它既可以是具体的物理实体的抽象,也可以是人为的概念,或者是任何有明确边界和意义的东西。

总之,对象是对问题域中某个实体的抽象,是构成系统的一个基本单位,它由一组表示其静态特征的属性和它可执行的一组操作组成。

对象可以做的操作表示它的动态行为,在面向对象分析和面向对象设计中,通常把对象的操作也称为方法或服务。

属性即对象所包含的信息,它在设计对象时确定,一般只能通过执行对象的操作来改变。

操作描述了对象执行的功能,若通过消息传递,还可以为其他对象使用。

对象有如下一些基本特点:

标识唯一性:对象是可区分的,并且由对象的内在本质来区分。

分类性:可以将具有相同属性的对象抽象成类。

多态性:同一个操作可以是不同对象的行为。

封装性:从外面看只能看到对象的外部特征,对象的内部状态只能由其自身改变。

模块独立性好:对象内部各种元素彼此结合得很紧密,内聚性强。

类和实例

将属性、操作相似的对象归为类。类是对象的抽象,它描述了属于该对象类型的所有对象的性质,而一个对象则是其对应类的一个实例。

类是关于对象性质的描述,它同对象一样,包括一组数据属性和在数据上的一组合法操作。

消息

对象间的相互合作需要一个机制协助进行,这样的机制称为消息。

消息是一个实例与另一个实例之间传递的信息,它请求对象执行某一处理或回答某一要求的信息,它同意了数据流和控制流。

通常,一个消息由三部分组成:

接受消息的对象的名称;

消息标识符(也称消息名);

零个或多个参数。

继承

继承是使用已有的类定义作为基础建立新类的定义技术。已有的类可当作基类来引用,则新类相应地可当作派生类来引用。

广义地说,继承是指能够直接获得已有的性质和特征,而不必重复定义它们。

面向对象软件技术的许多强有力的功能和突出的优点,都来源于把类组成一个层次结构的系统:一个类的上层可以有父类,下层可以有子类。这种层次结构系统的一个重要性质是继承性,一个类直接继承其父类的描述(数据和操作)或特性,子类自动地共享基类中定义的数据和方法。

继承分为单重继承和多重继承。单重继承是指一个类只允许有一个父类,多重继承是指一个类允许有多个父类。

多态性

对象根据所接收的消息而做出动作,同样的消息被不同的对象接收时可导致完全不同的行为,该现象称为多态性。

在面向对象的软件技术中,多态性是指子类对象可以像父类对象那样使用,同样的消息既可以发送给父类对象也可以发送给子类对象。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值