国家二级C++机试(选择题)模拟试卷133
选择题
1.算法的时间复杂度是指( )。(D)
A. 算法的长度
B. 执行算法所需要的时间
C. 算法中的指令条数
D. 算法执行过程中所需要的基本运算次数
解析:算法的时间复杂度,是指执行算法所需要的工作量,可以用算法在执行过程中所需基本运算的执行次数来度量算法的工作量。
2.以下数据结构中,属于非线性数据结构的是( )。(D)
A. ,栈
B. 线性表
C. 队列
D. 二叉树
解析:二叉树属于非线性结构。栈是一种特殊的线性表,这种线性表只能在固定的一端进行插入和删除操作;队列可看作是插入在一端进行,删除在另一端进行的线性表。
3.数据结构中,与所使用的计算机无关的是数据的( )。(C)
A. 存储结构
B. 物理结构
C. 逻辑结构
D. 线性结构
解析:数据的逻辑结构反映的是数据元素之间的逻辑关系,与使用的计算机无关。
4.内聚性是对模块功能强度的衡量,下列选项中,内聚性较弱的是( )。(B)
A. 顺序内聚
B. 偶然内聚
C. 时间内聚
D. 逻辑内聚
解析:内聚是从功能角度来衡量模块的联系,它描述的是模块内的功能联系。内聚有如下种类,它们之间的内聚度由弱到强排列:
偶然内聚——模块中的代码无法定义其不同功能的调用。但它使该模块能执行不同的功能,这种模块为巧合强度模块。
逻辑内聚——这种模块把几种相关的功能组合在一起,每次被调用时,由传送给模块的参数来确定该模块应完成哪一种功能。
时间内聚——这种模块顺序完成一类相关功能,比如初始化模块,它顺序地为变量置初值。
过程内聚——如果一个模块内的处理元素是相关的,而且必须以特定次序执行,则称为过程内聚。
通信内聚——这种模块除了具有过程内聚的特点外,还有另外一种关系,即它的所有功能都通过使用公用数据而发生关系。
顺序内聚——如果一个模块内各个处理元素和同一个功能密切相关,而且这些处理必须顺序执行,处理元素的输出数据作为下一个处理元素的输入数据,则称为顺序内聚。
功能内聚——如果一个模块包括为完成某一具体任务所必需的所有成分,或者说模块中所有成分结合起来是为了完成一个具体的任务,此模块则为功能内聚模块。
5.在关系中凡能惟一标识元组的最小属性集称为该表的键或码。二维表中可能有若干个键,它们称为该表的( )。(D)
A. 连接码
B. 关系码
C. 外码
D. 候选码
解析:在关系中凡能惟一标识元组的最小属性集称为该表的键或码。二维表中可能有若干个键,它们称为该表的候选码或候选键。从二维表的所有候选键中选取一个作为用户使用的键称为主键或主码。
6.检查软件产品是否符合需求定义的过程称为 ( )。(A)
A. 确认测试
B. 需求测试
C. 验证测试
D. 路径测试
解析:确认测试的任务是验证软件的功能和性能,以及其他特性是否满足需求规格说明中确定的各种需求。
7.数据流图用于抽象描述一个软件的逻辑模型,数据流图由一些特定的图符构成。下列图符名标识的图符不属于数据流图合法图符的是( )。(A)
A. 控制流
B. 加工
C. 存储文件
D. 源和潭
解析:数据流图用于抽象描述一个软件的逻辑模型,它由一些特定的图符构成,包括4个方面,即加工、数据流、存储文件、源和潭。
8.待排序的关键码序列为(15,20,9,30,67,65,45,90),要按关键码值递增的顺序排序,采取简单选择排序法,第一趟排序后关键码15被放到第( )个位置。(A)
A. 2
B. 3
C. 4
D. 5
解析:选择排序的基本思想是扫描整个线性表,从中选出最小的元素,将它交换到表的最前面,然后对剩下的子表采用同样的方法,直到子表为空。所以第一趟排序后,将选出最小的元素9放在第一个位置,元素15则放在第二个位置。
9.对关系S和关系R进行集合运算,结果中既包含关系S中的所有元组也包含关系R中的所有元组,这样的集合运算称为( )。(A)
A. 并运算
B. 交运算
C. 差运算
D. 除运算
解析:关系的并运算是指,由结构相同的两个关系合并,形成一个新的关系,其中包含两个关系中的所有元组。
10.下列选项中,不属于数据管理员(DBA)职责的是( )。(D)
A. 数据库维护
B. 数据库设计
C. 改善系统性能,提高系统效率
D. 数据类型转换
解析:数据库管理员(DataBaseAdministrator,DBA)是指对数据库的规划、设计、维护、监视等的人员,其主要工作如下:
.数据库设计。DBA的主要任务之一是数据库设计,具体地说是进行数据模式的设计。
.数据库维护。DBA必须对数据库中的数据安全性、完整性、并发控制及系统恢复、数据定期转储等进行实施与维护。
.改善系统性能,提高系统效率。DBA必须随时监视数据库的运行状态,不断调整内部结构,使系统保持最佳状态与效率。
11.假定MyClass为一个类,则该类的拷贝构造函数的声明语句为( )。(B)
A. MyClass(MyClass x);
B. MyClass(MyClass&x);
C. MyClass(&x);
D. MyClass(x);
解析:拷贝构造函数也是构造函数,所以函数名字为MyClass,但它只有一个参数,这个参数是本类的对象,即x;而且采用对象的引用的形式,也就是&x。所以本题答案是B)。
12.下列函数的功能是判断字符串str是否对称,对称则返回true,否则返回false,则横线处应填上( )。
Bool fun(ehar*str)
{ int i=0,i=0;
while(strD])j++;
for([j–;i<j&&str[i]==str[j];i++,j–);
retun i________j;
}(A)
A. >–
B. ‖
C. &&
D. <==
解析:while循环取串长度,赋值给i,然后在for循环中由串两边开始向中间进行字符比较,当最后i和j标识字符位置的变量相等,那么奇数个字符,或者i大于i时那么偶数个字符,则表示是对称的。
13.有以下程序段:
#include
#define MAX(x,y)(x)>(y)?(x):(y)
void main()
{int i,j,k;
i=10;
j=15;k=MAX(i,j)*10;
cout<<k<<endl;
}
本文档预览:3600字符,共12248字符,源文件无水印,下载后包含无答案版和有答案版,查看完整word版点下载