判断题(共20题,共40分)
开始说明:
结束说明:
1.(2分)
C++中不仅能重载已有的运算符,还能创建新的运算符。(×)
√
×
2.(2分)
在继承关系中,可以使用公有派生类对象为基类引用赋值。(√)
√
×
3.(2分)
重载运算符不能改变原有运算符的语义。(√)
√
×
4.(2分)
所有C++运算符都可以重载。(×)
√
×
5.(2分)
在继承关系中,如果基类与派生类有同名成员函数,则使用派生类对象调用同名成员函数时,调用的是派生类成员函数。(√)
√
×
6.(2分)
派生类中继承的基类成员的访问权限到派生类保持不变。
√
×
7.(2分)
派生类可以选择性地继承基类的部分成员。
√
×
8.(2分)
C++有垃圾回收机制,不需要自己编程实现内存资源的释放。
√
×
9.(2分)
仿函数指的是在类中重载“()”运算符后,这个类的对象可以像函数一样使用。
√
×
10.(2分)
一个派生类指针也可以指向基类对象。
√
×
11.(2分)
运算符重载就是在自定义数据类型中(如类)对运算符进行重新定义,赋予运算符新的功能,使自定义数据类型对象也可以直接使用运算符完一定的操
作运算。
√
×
12.(2分)
基类的protected成员在派生类中仍然是protected。
√
×
13.(2分)
输入输出运算符只能重载为类的友元函数。
√
×
14.(2分)
公有继承的基类中的private成员在派生类中仍是private的。
√
×
15.(2分)
继承关系只是能单继承,即一个派生类只能继承自一个基类。
√
×
16.(2分)
转换构造函数可以将一个标准类型数据转换为类对象。
√
×
17.(2分)
在虚继承中,派生类对象中都会增加一个隐藏的虚基类指针。
√
×
18.(2分)
类型转换函数只能重载为类的成员函数。
√
×
19.(2分)
关系运算符不能重载。
√
×
20.(2分)
如果基类指针指向派生类对象,则通过基类指针可以调用派生类成员函数。
√
×
单选题(共30题,共60分)
开始说明:
结束说明:
21.(2分)
下列有关函数参数的描述,错误的是( )。
A、设置默认值的参数右边不允许出现没有指定默认值的参数
B、参数默认值的设置顺序从参数表的右端开始
C、参数默认值可以设置在定义语句中,也可以在声明语句中
D、参数默认值可以是数值也可以是表达式
22.(2分)
C++程序运行中需要从键盘上输入多于一个数据时,各数据之间应使用( )符号作为分隔符。
A、空格或逗号
B、逗号或回车
C、逗号或分号
D、空格或回车
23.(2分)
当一个类对象离开它的作用域时,系统自动调用该类的( )。
A、无参构造函数
B、带参构造函数
C、拷贝构造函数
D、析构函数
24.(2分)
为了避免在嵌套的条件语句if…else中产生歧义,C++规定的if…else语句的匹配原则是( ) 。
A、else子句与所排位置相同的if配对
B、else子句与其之前最近的if配对
C、else子句与其之后最近的if配对
D、else子句与同一行上的if配对
25.(2分)
cout是I0流库预定义的( )。
A、类
B、对象
C、包含文件
D、常量
26.(2分)
下列选项中,哪一项不是使用string类创建对象的正确方式?( )
A、string str(“OK”) ;
B、string str=“OK”;
C、string str;
D、strint str=‘OK’;
27.(2分)
一个类的构造函数通常被定义为该类的( )成员。
A、公用
B、保护
C、私有
D、友元
28.(2分)
假定一个类的构造函数为 “A(int aa=1, int bb=0) {a=aa; b=bb;}”,则执行 “A x(4);”语句后,x.a和x.b的值分别为( )。
A、1和0
B、1和4
C、4和1
D、4和0
29.(2分)
假定一个类AB只含有一个整型数据成员a,当用户不定义任何构造函数时,系统为该类定义的无参构造函数为( )。
A、AB() {a=0;}
B、AB(int aa=0): a(aa) {}
C、AB(int aa): a(aa) {}
D、AB() {}
30.(2分)
设”int a=15,b=26;”,则”cout<<(a,b);”的输出结果是( )。
A、15
B、26,15
C、15,26
D、26
31.(2分)
在C++中,使用new分配内存后,如果要释放空间,则应该使用( )运算符释放?
A、free
B、delete
C、auto
D、malloc
32.(2分)
对类对象成员的初始化是通过构造函数中给出的( )实现的。
A、函数体
B、初始化表
C、参数表
D、初始化表或函数体
33.(2分)
类的析构函数可以带有( )个参数。
A、0
B、1
C、2
D、任意
34.(2分)
C++语言可执行程序从( )开始执行。
A、程序中第一条可执行语句
B、变量声明语句
C、程序中的main函数
D、包含文件中的第一个函数
35.(2分)
下列选项中,( )是不合法的标识符。
A、Program
B、Obj23
C、double
D、B_C_D
36.(2分)
假定一个类AB只含有一个整型数据成员a,用户为该类定义的带参构造函数可以为( )。
A、AB() {}
B、AB(): a(0){}
C、AB(int aa=0) {a=aa;}
D、AB(int aa) {}
37.(2分)
关于面向对象程序设计方法,下列说法中正确的是( )。
A、在数据处理过程中,采用的是自顶向下、分而治之的方法
B、将整个程序按功能划分为几个可独立编程的子模块
C、以“对象”和“数据”为中心
D、数据和处理数据的过程代码是分离的、相互独立的实体
38.(2分)
在C++语言里,一条语句以( ) 字符作为结束符。
A、,
B、;
C、.
D、无符号
39.(2分)
关于封装,下列说法中不正确的是( )。
A、通过封装,对象的全部属性和操作结合在一起,形成一个整体
B、通过封装,一个对象的实现细节被尽可能地隐藏起来(不可见)
C、通过封装,每个对象都成为相对独立的实体
D、通过封装,对象的属性都是不可见的
40.(2分)
假定AB为一个类,则执行 “AB x(a,5);”语句时将自动调用该类的( )。
A、带参构造函数
B、无参构造函数
C、拷贝构造函数
D、赋值重载函数
41.(2分)
C++源程序文件的扩展名为( )。
A、.CPP
B、.C
C、.DLL
D、.EXE
42.(2分)
用逻辑表达式表示“大于10而小于20的数”,正确的是( )。
A、10< x < 20
B、x > 10 || x < 20
C、x >10 & x < 20
D、!(x <= 10 || x >= 20)
43.(2分)
循环语句“for(int i=0; i<n; i++) cout<<i*i<<’ ’;”中循环体执行的次数为( )。
A、1
B、n-1
C、n
D、n+1
44.(2分)
C++标准输入输出的头文件是( )。
A、cmath
B、iostream
C、string
D、algorithm
45.(2分)
设px是指向一个类对象的指针变量,则执行 “delete px;”语句时,将自动调用该类的( )。
A、无参构造函数
B、带参构造函数
C、析构函数
D、拷贝构造函数
46.(2分)
类的构造函数可以带有( )个参数。
A、0
B、1
C、2
D、任意
47.(2分)
当将一个类A或函数f()说明为另一个类B的友元后,类A或函数f()能够直接访问类B的( )。
A、只能是公有成员
B、只能是保护成员
C、只能是除私有成员之外的任何成员
D、具有任何权限的成员
48.(2分)
关于友元,下列说法中正确的是( )。
A、类可以定义友元函数和友元类
B、友元函数只能调用类的成员函数,不能访问类的成员变量
C、友元类只能访问类的成员变量,不能调用类的成员函数
D、以上说法都不对
49.(2分)
要把高级语言编写的源程序转换为目标程序,需要使用( )。
A、编辑程序
B、驱动程序
C、调试程序
D、编译程序
50.(2分)
静态成员函数对类的数据成员访问( )。
A、是不允许的
B、只允许是静态数据成员
C、只允许是非静态数据成员
D、可允许是静态数据成员或非静态数据成员
浙江电大C++语言程序设计_形考2-0001最新答案
随机题搜索:
觉得这篇文章对你有用的话,就打赏一下支持文章作者
评论0