id,question,A,B,C,D,answer
0,当采用分块查找时，数据的组织方式为____,数据分成若干块， 每块内数据有序,数据分成若干块， 每块内数据不必有序， 但块间必须有序， 每块内最大（ 或最小） 的数据组成索引块,数据分成若干块， 每块内数据有序， 但块间必须有序， 每块内最大（ 或最小） 的数据组成索引块,数据分成若干块， 每块（ 除最后一块外） 中数据个数需相同,B
1,实现一个银行系统，包括存钱、取钱、转账等多项业务，最恰当的资源组合方式是____,继承,重载,组合,实例化,C
2,"#include<iostream.h>
class date
{
private:
int day,month,year;
public:
date(){}
date(int x,int y,int z){day=x;month=y,year=z;}
void set(){day=1;month=10;year=2002;}
void display(){cout<<day<<""/""<<month<<""/""<<year<<"""";}
};
void main()
{
date day1;
date day2(10,10,2002);
day1.set();
day1.display();
day2.display();
}
上面C++程序运行的结果是____。",10/10/2002 1/10/2002,1/10/2002 10/10/2002,10/10/2002 10/10/2002,1/10/2002 1/10/2002,B
3,"假定A是一个类的名字，下面四个语句总共会引发类A构造函数的调用多少次____
①A *p=newA;
②A p2[10];
③A p3;
④A *p4[10];",11,12,21,22,B
4,"有以下程序代码
#include<iostream>
using namespace std;
class integer{
public:
integer(int value=0):value(value){}
integer operator+(integer itg){
return value+=itg.value;
}
friend ostream&operator<<(ostream&os,integer&it){
return os<<it.value;
}
private:
int value;
};
int main()
{
integer i;
integer ii;
ii=2+i;
cout<<""i=""<<i<<"","";
cout<<""ii=""<<ii<<endl;
return 0;
}
编译情况或运行时输出是____","i=0 ,ii=2","i=2 ,ii=2","i=0 ,ii=0",编译错误,D
5,在以下各种查找方法中，平均查找时间与结点个数无关的查找方法是____,顺序查找,折半查找,哈希查找,分块查找,C
6,"读下面C++程序：
#include<iostream.h>
class vehicle{
protected:
int wheels;
public:
vehicle(int in_wheels=4){wheels=in_wheels;}
int get_wheels(){return wheels;}
};
void main()
{
vehicle unicyclel;
vehicle unicycle2(3);
cout<<""Theunickele1has""<<unicyclel.get_wheels()<<""wheel.\n"";
cout<<""Theunickele2has""<<unicycle2.get_wheels()<<""wheel.\n"";
}
编译后输出结果为____。","The unicycle1 has 0 wheel.
The unicycle2 has 3 wheel.","The unicycle1 has 4 wheel.
The unicycle2 has 4 wheel.","The unicycle1 has 4 wheel.
The unicycle2 has 3 wheel.","The unicycle1 has 0 wheel.
The unicycle2 has 4 wheel.",C
7,以下说法正确的是____,在const成员函数中不可以使用this指针；,在static成员函数中不可以使用this 指针；,抽象类的成员函数都是纯虚函数；,抽象类的派生类必须实现抽象类中的纯虚函数。,B
8,一个n个顶点的连通无向图，其边的个数至少为____,n-1,n,n+1,nlogn,A
9,在C++程序中出现____情况时，将引发一个异常。,在 main 函数的结尾少了一个大括号,for 循环语法错误,被零除或数组溢出,数组没有被赋满值,C
10,线性表若采用链式存储结构时，要求内存中可用存储单元的地址____。,必须是连续的,部分地址必须是连续的,一定是不连续的,连续不连续都可以,D
11,在类中说明的友元函数时____,必须声明在私有成员部分,必须声明在共有成员部分,必须声明在类开始处,可以声明在类中任何地方,D
12,对有14个元素的有序表A[1..14]作二分查找，查找元素A[6]时的被比较元素依次为____,"A[l], A[2], A[3], A[4]","A[l], A[14], A[7], A[4]","A[7], A[5], A[3], A[6]","A[7], A[3], A[5], A[6]",D
13,下列概念____体现了面向对象的多态性。,虚基类,虚函数,对象容器,封装,B
14,"若有定义char s[]={'1','2','3','0','0','4','5'};则cout<<s的结果为____",1230045,12300,1230,123,C
15,在C++中，数据封装要解决的问题是____。,数据规范化排列,数据高速转换,避免数据丢失,保证数据完整性,D
16,在顺序表（长度为127）中插入一个元素平均要移动____个元素。,8,63.5,63,7,B
17,关于左值引用，下列用法或叙述不正确的是____,引用可以先定义，再赋值；,引用可以作为函数参数；,函数可以返回引用；,引用是另一个有名字变量的别名。,A
18,"现今的软件或是操作系统往往都有32位和64位的不同的版本，主要的区别就是32位的应用程序中，使用32个二进制位（即4字节）来表示内存地址，64位软件则是用64个二进制位表示内存地址。于是，当我们在将一个程序编译为64位的程序时，有下列语句
cout<<sizeof(int)<<""""<<sizeof(int*)<<"""";
cout<<sizeof(double)<<""""<<sizeof(double*)<<endl;
其输出会是____;",4 4 8 8,4 4 8 4,4 8 8 8,4 8 4 8,C
19,下述哪一条是顺序存储结构的优点？____,存储密度大,插入运算方便,删除运算方便,可方便地用于各种逻辑结构的存储表示,A
20,将一棵有100个结点的完全二叉树从根这一层开始，每一层上从左到右依次对结点进行编号，根结点的编号为1，则编号为49的结点的左孩子编号为____。,98,99,50,48,A
21,下面哪种数据结构最适合用于创建一个优先级队列？____,栈,双向链表,单向链表,堆,D
22,关于多态性，下列说法错误的是____,C++语言的多态性分为编译时的多态性和运行时的多态性；,运行时的多态性可通过虚函数和函数重载实现；,编译时的多态性可通过模板实现；,实现运行时多态性的机制称为动态多态性。,B
23,关于构造函数，下列说法错误的是____,构造函数必须指定类型说明；,构造函数的函数名与类名相同；,构造函数可以设置缺省参数；,构造函数可以重载。,A
24,对于栈操作数据的原则是____。,先进先出,后进先出,后进后出,不分顺序,B
25,设栈S和队Q的初始状态均为空，元素abcdef依次通过栈S，一个元素出栈后即进队Q，若6个元素出栈的序列是cefdba，则栈S的容量至少应该是____,6,4,3,2,B
26,下面关于模版说法正确的是____。,类模版提供了一种对类中类型进行参数化的方法; 在实例化模版类时，实际的数据类型会代替与类成员或方法相关联的类型参数,类模版中必须包含类成员与类方法,不可以用自定义的数据类型实例化一个模版类,类模版中类方法的参数必须用占位符替代，而不能使用实际数据类型,A
27,现有一棵无重复关键字的AVL树，对其进行中序遍历可得到一个降序序列。下列关于该AVL树的叙述中，正确的是：____,根结点的度一定为 2,树中最小元素一定是叶结点,最后插入的元素一定是叶结点,树中最大元素一定是无左子树,D
28,计算算法的时间复杂度是属于一种____的方法。,事前统计,事前分析估算,事后统计,事后分析估算,B
29,假定AB为一个类，r2是AB类的对象，执行“AB r1=3;”时将自动调用该类的____,带一个整型参数的构造函数,无参构造函数,赋值运算符重载函数,拷贝构造函数,A
30,下列排序算法中，元素的移动次数与关键字的初始排列次序无关的是____,直接插入排序,冒泡排序,基数排序,快速排序,C
31,线性链表不具有的特点是____。,随机访问,不必事先估计所需存储空间大小,插入与删除时不必移动元素,所需空间与线性表长度成正比,A
32,"设有一个递归算法如下：
int fact(int n){
if(n<=0)return 1;
else return n*fact(n-1);
}
下面正确的叙述是____",计算fact(n)需要执行n次递归,fact(7)=5040,此递归算法最多只能计算到fact(8),以上结论都不对,B
33,"在C++中，一个函数为void f(int=1,char='a'),另一个函数为void f(int),则它们____。",不能在同一程序中定义,可以在同一程序中定义并可重载,可以在同一程序中定义，但不可重载,以上说法都不正确,B
34,已知一个有向图的邻接矩阵表示，要删除所有从第i个结点发出的边，应____。,将邻接矩阵的第i行删除,将邻接矩阵的第i行元素全部置为0,将邻接矩阵的第i列删除,将邻接矩阵的第i列元素全部置为0,B
35,"—组关键字序列A(12,14,3,16,8,7,10,17,5,11,9,6,13,15,4),为排成递增序利用堆排序的方法建立的初始的堆为____","（ 3， 4， 5, 8， 9， 7, 6, 17， 16， 14， 11， 12， 13， 15， 10 )","( 3， 5, 4, 8, 9， 7, 6， 17， 16， 14, 11， 12, 13， 15， 10 )","( 17, 16, 15, 14, 11, 13, 10, 12, 5, 8, 9, 6, 7， 3， 4 )","( 17, 16, 14, 15, 11, 13, 10, 12, 5, 8, 9, 6, 7, 3, 4 )",D
36,若一个线性表中最常用的操作是取第1个元素和我第1个元素的前趋元素，则采用____存储方式最节省时间。,顺序表,单链表,双链表,单循环链表,A
