(25) 下面对对象概念描述错误的是______。
A. 任何对象都必须有继承性
B. 对象是属性和方法的封装体
C. 对象间的通讯靠消息传递
D. 操作是对象的动态性属性
(25)
[答案]A
[考点]程序设计基础
[评析]
此题为基本概念,必记!这里举几个例子说明以助大家理解:
比如
VB:
Command按纽类是个类,在窗体上画一个名为Command1的按纽即是创建该类的一个实例,也可创建另外一个实例如Command2,他们的属性可以调置为不同的,但是都是Command类的实例。Command1,Command2都是对象,它们封装了属性和方法,都是封装体,比如Name属性,Caption属性……宏观上可说Command1的Move操作是动态属性,对象间的通读靠消息传递,比如在Command1的单击事件中写上:
Picture1.Print "消息传递"
Picture1是一个图片框对象,我们还可以调用Form_Load事件等等,都是通过消息传递的,即对象A向对象B发出消息,对象B执行怎样的操作。
C :
class Base
{
Public:
Base(){}
~Base(){}
...
};
class Derive:Public Base
{
Public:
...
Print()
{
Cout<<"打印函数!"<<endl;
}
};
void main()
{
Derive a;
Base *p;
...
}
Base为基类,Derive为基类上的派生类,它继承了基类的一些属性和方法等,a为创建的实例,即是一个对象,它封装了类Derive的所有性性和方法,特别是私有的属性和方法,直接调用它们会失败,这就是类的封装性。对象间的通讯是靠消息传递的,比如我们在内存中删除p所指的一个对象,用delete p语句,会调用类Base的析构函数~Base();我们也可用a.Print()语句来调用Derive类的Print()函数,对象a具有类Derive的属性和方法(在C 中一般用函数来实现,比如Print(),我们可以说这操作是对象a的动态属性)
(26) 下面不属于软件工程的3个要素的是______。
A. 工具
B. 过程
C. 方法
D. 环境
(26)
[答案]D
[考点]软件工程基础
[评析]
这里阐述一下,以上答案为原稿的答案,有的书上答案应该为B,解释如下:
软件工程包括的三要素是:软件开发方法学、工具和环境支持,而其主体内容是软件开发方法学。
1、软件开发方法,比如根据瀑布模型有结构化分析与设计方法,有原型化开发方法
2、软件开发工具各个瀑存模型阶段都有相关工具,比如需求分析阶段有DFD数据流程图,详细设计阶段有HIPO图或PAD图,编码工具有VC、VB……
3、软件开发环境是全面支持软件开发全过程的软件工具集合。
如果你有权威且详尽的解释,还请邮给茂叶: dj8529@sina.com 或去我主页上留言
此题的争论,意义性不大,燃眉之急是应负考试。 :)
软件工程三要素工具、方法、过程,请大家记一下。
(27) 程序流程图(PFD)中的箭头代表的是______。
A. 数据流
B. 控制流
C. 调用关系
D. 组成关系
(27)
[答案]B
[考点]软件工程基础
[评析]
如果A,那么B,否则C,这是我们二级中很熟悉的程序流程方式,我们可以画成相应的PFD图或N-S图。易知箭头控制应该是哪条语句执行,即B答案。
(28) 在数据管理技术的发展过程中,经历了人工管理阶段、文件系统阶段和数据库系统阶段。其中数据独立性最高的阶段是______。
A. 数据库系统
B. 文件系统
C. 人工管理
D. 数据项管理
(28)
[答案]A
[考点]数据库设计基础
[评析]
关于数据管理技术的三个阶段如下表:
1.人工管理阶段
人工管理数据的特点是:
(1)数据不保存。
(2)数据无专门软件进行管理。
(3)数据不共享。
(4)数据不具有独立性。
2.文件系统阶段
该阶段的数据管理具有如下特点:
(1)数据可以长期保存。
(2)由文件系统管理数据。文件系统管理数据存在如下缺点:
(1)数据共享性差,数据冗余度大。
(2)数据独立性差。
3.数据库系统阶段
与人工管理和文件系统阶段相比较,数据库系统阶段具有如下的特点:
(1)数据结构化
(2)数据共享性高、冗余度小、易扩充
(3)数据独立性高
(4)统一的数据管理和控制数据库管理系统必须提供以下几个方面的数据控制和保护功能:
(1)数据的安全性(security)保护。
(2)数据的完整性(integrity)控制。
(3)数据库恢复(recovery)。
(4)并发(concurrency)控制。
(5)事务(transaction)支持。
(29) 用树形结构来表示实体之间联系的模型称为______。
A. 关系模型
B. 层次模型
C. 网状模型
D. 数据模型
(29)
[答案]B
[考点]数据库设计基础
[评析]
层次模型结构是一棵有向树,树中的每个结点代表一种记录类型,这些结点满足:有且仅有一个结点无双亲(根结点),其它结点有且仅有一个双亲结点。
网状模型则相当于一个有向图,与层次模型结构不同的是:一个结点可以有多个双亲结点,且多个结点可以无双亲结点。
关系模型则是二维表,一张表即为一个关系,这个很常见,如学生关系(学号,姓名,出生年月,性别),就像我们的办公软件中电子表格那样的表格。
D项的数据模型不是数据库的基本模型。
(30) 关系数据库管理系统能实现的专门关系运算包括______。
A. 排序、索引、统计
B. 选择、投影、连接
C. 关联、更新、排序
D. 显示、打印、制表
(30)
[答案]B
[考点]数据库设计基础
[评析]
此题为数据库的基本概念,如果你完全没学过数据库,可以对照办工软件的电子表格进行如下理解:
选择:我们根据某条件选择出一行或多行元组(一个元组即为二维表中的一行)
投影:按字段(也称属性,比如学生关系(学号,姓名,出生年月,性别),学号、姓名……都是属性)选取一列或多列(一个二维表中所有元组在某一列或几列上截取出来)。
连接:2个或2个以上的表连接组成一张新的表,通常有条件连接。比如学生关系(学号,姓名,系号),又有一张系表(系号,系名,主任),2张表可以合并为一张这样的表(学号,姓名,系号,系名,主任)
(31) 算法一般都可以用哪几种控制结构组合而成______。
A. 循环、分支、递归
B. 顺序、循环、嵌套
C. 循环、递归、选择
D. 顺序、选择、循环
(31)
[答案]D
[考点]数据结构与算法
[评析]
结构化程序设计中,基本的控制结构为顺序、选择、循环。各种具体的程序设计语言中的一些控制结构都可以划分到这些类中。比如VB里的Select Case语句、If...Elseif...Else...End If,C/C 中的switch()、if{}……都属于选择控制结构。相应的for循环和while语句都属于循环结构。按从上到下顺序执行的即是顺序控制结构。
(32) 数据的存储结构是指______。
A. 数据所占的存储空间量
B. 数据的逻辑结构在计算机中的表示
C. 数据在计算机中的顺序存储方式
D. 存储在外存中的数据
(32)
[答案]B
[考点]数据结构与算法
[评析]
这是个基本概念题。存储空间量只是数据的存储结构的一个属性,答案C也太片面,比如链表也是种存储方式,而非线性的还有树、图……我们所学的数据结构不涉及到数据在计算机外存(比如硬盘、软盘)具体的方式,而仅关心它们在内存中逻辑结构,比如数组,它是内存中一片连续的数据存储,我们对每一个元素都可以顺序地访问,只需要知道某一个元素的地址,其它数据元素的地址可以据库下标与数组类型(如字符型、整型……)所占的存储空间就可算出每个元素的地址,故顺序访问所有元素。但是对于具体数据在内存中的物理存储,我们很少关心。比如某个数组建立时,它的首地址具体是多少?它们在内存中的二进制表示是什么的?
另,什么叫物理结构,什么叫逻辑结构,可以这样来理解,就好比物理结构是一个人的肉体,逻辑结构是一个人的灵魂,类似于计算机中硬件与软件的说法。就好比我们上QQ,发送消息、接收消息,基本上近似大众人的思维,但发送消息与接收消息这些的具体技术过程或它们在CPU和硬盘上的活动,甚至二进制是什么呢?去问腾讯公司
(33) 设有下列二叉树:
对此二叉树中序遍历的结果为______。
A. ABCDEF
B. DBEAFC
C. ABDECF
D. DEBFCA
(33)
[答案]B
[考点]数据结构与算法
[评析]
该题原稿没图,故无从解释,此知识点的详解部分请看53题
(34) 在面向对象方法中,一个对象请求另一对象为其服务的方式是通过发送______。
A. 调用语句
B. 命令
C. 口令
D. 消息
(34)
[答案]D
[考点]程序设计基础
[评析]
通过消息机制。太理论方面的不多说,现举例说明。
C :
比如在VC 中,单击了一个菜单命令项"退出",我们要实现退出程序,如何来实现?很简单,只要向窗体发送一个PostQuitMessage(0);就可以关闭窗体。
这个在VB中还简单,三个字符"End"即可解决,相当于向所有窗体发送一个销毁窗体的消息,即"Unload 窗体名"语句。(如果是单个窗体的话,即相当于Unload Me语句)
VB:
Public a As Integer
Private Sub Command1_Click()
a = 20
Print a
End Sub
Private Sub Command2_Click()
Form_Load ''''''''''''''这里调用Form_Load()过程,实用a=10
Print a
End Sub
Private Sub Form_Load()
a = 10
End Sub
命令按纽Command2向其母窗体发送一个消息,使其为Command2服务。
Command2是CommandButton类的一个对象,主窗体是窗体类的一个对象。
关于类与对象的理解,请大家看前面的题的详解。
(35) 检查软件产品是否符合需求定义的过程称为______。
A. 确认测试
B. 集成测试
C. 验证测试
D. 验收测试
(35)
[答案]A
[考点]软件工程基础
[评析]
A、C、D相近,但A为比较正规的说法名词。
确认测试也称合格测试或验收测试,主要由用户参加,检验软件规格说明的技术标准的符合程度,是保证软件质量的最后关键环节。
单元测试主要采用白盒法,之后再采用集成测试,主要采用黑盒法。这些主要由开发者的工作,而无用户参与,不是检查是否符合需求定义的。
什么叫白盒黑盒?
相当于这样理解吧:
白盒测试,我们要注意到代码;黑盒,我们只关心程序运行的输入输出是否正确,一般是大量的测试,主要于非增量测试中使用,而非增量测试又一般适用于规模较小的系统开发。可以想象,一个很大很复杂的系统,我们用黑盒法来集成测试,效果可想而知。