计算机二级《C++》上机考前选择练习题Word格式.docx
《计算机二级《C++》上机考前选择练习题Word格式.docx》由会员分享,可在线阅读,更多相关《计算机二级《C++》上机考前选择练习题Word格式.docx(10页珍藏版)》请在冰豆网上搜索。
![计算机二级《C++》上机考前选择练习题Word格式.docx](https://file1.bdocx.com/fileroot1/2022-11/25/de01a8a7-2d46-4dc1-9f71-8d66196ad61a/de01a8a7-2d46-4dc1-9f71-8d66196ad61a1.gif)
5、如果表达式x*y+z中,“*”是作为友元函数重载的,“+”是作为成员函数重载的,则该表达式还可为()。
A.operator+(operator$(X,Y),z)
B.x.operator+(operator*(x,y),Z)
C.Y.operator*(operator+(x,Y),z)
D.x.operator+(operator{(X,Y))
6、在下列关键字中,不能用来表示继承方式的是()。
A.private
B.static
C.public
D.protected
7、下面的( )选项不能作为函数的返回类型。
A.void
B.int
C.new
D.long
8、有如下函数定义:
voidfunC(inta,int&
B.{a++;
b++;
}若执行代码段:
intx=0,Y=1:
funC(X,y);
则变量X和y的值分别是()。
A.0和1
B.1和1
C.0和2
D.1和2
9、定义无符号整数类为UInt,下面能够作.为类UInt实例化值的是()。
A.一369
B.369
C.0.369
D.整数集合{1,2,3,4,5}
10、下列关于类定义的说法中,准确的是( )。
A.类定义中包括数据成员和函数成员的声明
B.类成员的缺省访问权限是保护的
C.数据成员必须被声明为私有的
D.成员函数只能在类体外实行定义
11、有如下程序:
#nclude
usingnamespacestd;
intmain()
voidfunction(doubleval);
doubleval;
function(val);
cout<
return0;
voidfunction(doubleval)
}val=3;
}
编译运行这个程序将出现的情况是( )。
A.编译出错,无法运行
B.输出:
3
C.输出:
3.0
D.输出一个不确定的数
12、this指针是C++语言实现()的一种机制。
A.抽象
B.封装
C.继承
D.重载
13、下面关于虚函数的描述,错误的是()。
A.在成员函数声明的前面加上virtual修饰,就可把该函数声明为虚函数
B.基类中说明了虚函数后,派生类中对应的函数也必须说明为虚数
C.虚函数能够是另一个类的友元函数,但不能是静态成员函数
D.基类中说明的纯虚函数在其任何派生类中都必须实现
14、有如下程序:
usingnamespaeestd;
doubleval:
eout<
val=3;
编译运行这个程序将出现的情况是()。
15、面向对象方法中,继承是指()。
A.一组对象所具有的相似性质
B.一个对象具有另一个对象的性质
C.各对象之间的共同性质
D.类之间共享属性和操作的机制
16、下列程序的运行结果为()。
#include
voidmain(){
inta=2:
intb=a+1:
cout<
A.0.66667
B.0
C.0.7
D.0.66666666…
17、有如下定义:
inta[5]={1,3,5,7,9},*P=a;
下列表达式中不能得到数值5的是()。
A.a[2]
B.a[3]
C.*(P+2)
D.+P+4
18、C++系统预定义了4个用于标准数据流的对象,下列选项中不属于此类对象的是()。
A.cout
B.cin
C.cerr
D.cset
19、有如下程序:
classGA{
virtualintf()tretuml;
};
classGB:
publicGA{
virtualintf(){retum2;
voidshow(GAg){eout<
9.f();
voiddisplay(GA&
g){cout<
GAa;
show(A.;
display(A.;
GBb;
show(B.;
display(B.;
return0;
执行这个程序的输出结果是()。
A.1111
B.1211
C.1112
D.1212
20、下列叙述中准确的是()。
A.有一个以上根结点的数据结构不一定是非线性结构
B.只有一个根结点的数据结构不一定是线性结构
C.循环链表是非线性结构
D.双向链表是非线性结构
21、下列关于虚函数的说明中,准确的是( )。
A.从虚基类继承的函数都是虚函数
B.虚函数不得是静态成员函数
C.只能通过指针或引用调用虚函数
D.抽象类中的成员函数都是虚函数
22、某二叉树共有7个结点,其中叶子结点只有l个,则该二叉树的深度为(假设根结点在第1层)()。
A.3
B.4
C.6
D.7
23、在数据库设计中,将E~R图转换成关系数据模型的过程属于()。
A.需求分析阶段
B.概念设计阶段
C.逻辑设计阶段
D.物理设计阶段
24、下列关于类模板的模板参数的叙述中,错误的是()。
A.模板参数能够作为数据成员的类型
B.模板参数能够作为成员函数的返回类型
C.模板参数能够作为成员函数的参数类型
D.模板参数不能作为成员函数的局部变量的类型
25、在软件开发中,需求分析阶段产生的主要文档是()。
A.可行性分析报告
B.软件需求规格说明书
C.概要没计说明书
D.集成测试计划
26、下面关于模板的描述,错误的是()。
A.函数模板和类模板的参数能够是任意的数据类型
B.类模板不能直接使用,必须先实例化为相对应的模板类,然后定义了模板类的对象后才能使用
C.函数模板不能直接使用,需要实例化为模板函数后才能使用
D.类模板的成员函数都是模板函数
27、数据库系统的三级模式不包括()。
A.概念模式
B.内模式
C.外模式
D.数据模式
28、下列语句中不是死循环的是()。
A.inti=10;
B.for(inti=1;
j<
10;
i++)
while
(1){
{i--;
i--;
}
if(i==1)break;
C.inti-0;
D.inti=1:
29、为了取代c中带参数的宏,在c++中使用( )。
A.重载函数
B.内联函数
C.递归函数
D.友元函数
30、C++语言对C语言做了很多改进,C++语言相对于C语言的最根本的变化是()。
A.增加了一些新的运算符
B.允许函数重载,并允许设置默认参数
C.规定函数说明符必须用原型
D.引进了类和对象的概念
31、派生类的成员函数不能访问基类的( )。
A.公有成员和保护成员
B.公有成员
C.私有成员
D.保护成员
32、下列代码段中声明了3个类:
ClassPerson{};
ClassStudent:
publiCPerson{};
ClassUndergraduate:
Student{};
下列关于这些类之间关系的描述中,错误的是()。
A.类Person是类Undergraduate的基类
B.类Undergraduate从类Student公有继承
C.类Student是类Person的派生类
D.类Undergraduate是类Person的派生类
33、若有下面的函数调用:
fun(fl+b,3,max(n一1,B.)
则fun的实参个数是( )。
C.5
D.6
34、有如下两个类定义:
classXX{
private:
doublexl;
protected:
doublex2;
doublex3;
classYY:
protectedXX{
doubleyl;
doubley2;
doubley3;
在类YY中保护成员变量的个数是()。
A.1
B.2
C.3
D.4
35、下列关于运算符重载的描述中,准确的是()。
A.运算符重载为成员函数时,若参数表中无参数,重载的是一元运算符
B.一元运算符只能作为成员函数重载
C.二元运算符重载为非成员函数时,参数表中有一个参数
D.C++中能够重载所有的运算符
36、建立派生类对象时,3种构造函数分别是a(基类的构造函数)、b(成员对象的构造函数)、C(派生类)构造函数),这3种构造函数的调用顺序为()。
A.abC
B.aCb
C.Cab
D.Cba
37、在下列枚举符号中,用来表示“相对于当前位置”文件定位方式的是( )。
A.ios_base:
:
cur
B.ios—base:
beg
C.los_base:
0ut
D.ios—base:
end
38、当使用ifstream流类定义一个流对象并打开一个磁盘文件时,文件的默认打开方式为( )。
A.ios—base:
in
inliosbase:
C.losbase;
D.ios_base:
in&
ios_base:
0ut
39、下列相关运算符重载的叙述中,准确的是( )。
A.运算符重载是多态性的一种表现
B.C++中能够通过运算符重载创造新的运算符
C.C++中所有运算符都能够作为非成员函数重载
D.重载运算符时能够改变其结合性
40、必须用一对大括号括起来的程序段是( )。
A.switCh语句中的ease标号语句
B.if语句的分支
C.循环语句的循环体
D.函数的函数体