主页 > 其他院校 > 西安交通大学 >

西安交通大学18年9月课程考试《面向对象程序设计(高起专)》作业考核试题【参考答案】

作者:apycfd

西安交通大学18年9月课程考试《面向对象程序设计(高起专)》作业考核试题 -0001 试卷总分:100 得分:0 一、 单选题 (共 30 道试题,共 60 分) 1.在下面的4个关键字中,( )是用来说明虚函
西安交通大学18年9月课程考试《面向对象程序设计(高起专)》作业考核试题 -0001
试卷总分:100    得分:0
一、 单选题 (共 30 道试题,共 60 分)
1.在下面的4个关键字中,( )是用来说明虚函数的。
A.virtual
B.public
C.protected
D.private
 
 
2.下列对引用的陈述中错误的是()。
A.每一个引用都是其所引用对象的别名,因此必须初始化;
B.形式上针对引用的操作实际上作用于它所引用的对象;
C.一旦定义了引用,一切针对其所引用对象的操作只能通过该引用间接进行;
D.不需要单独为引用分配存储空间 。
 
 
3.以下叙述中正确的是( )
A.使用#define可以为常量定义一个名字,该名字在程序中可以再赋另外的值
B.使用const定义的常量名有类型之分,其值在程序运行时是不可改变的
C.在程序中使用内置函数使程序的可读性变差
D.在定义函数时可以在形参表的任何位置给出缺省形参值
 
 
4.下列对派生类的描述中,( )是错误的。
A.一个派生类可以作为另一个类的基类
B.派生类至少有一个基类
C.派生类的成员除了它自己的成员外,还包含它的基类的成员
D.派生类中继承的基类成员的访问权限到派生类中保持不变
 
 
5.一个类的构造函数通常被定义为该类的(??)成员。
A.公用
B.保护
C.私有
D.友元
 
 
6.一个函数功能不太复杂,但要求被频繁调用,选用( )
A.内置函数
B.重载函数
C.递归函数
D.嵌套函数
 
 
7.假定AA为一个类,a()为该类公有的函数成员,x为该类的一个对象,则访问x对象中函数成员a()的格式为( )。
A.x.a
B.x.a()
C.x->a
D.x->a()
 
 
8.类的析构函数可以带有( )个参数。
A.0
B.1
C.2
D.任意
 
 
9.在重载一个运算符时,其参数表中没有任何参数,这表明该运算符是()。
A.作为友元函数重载的1元运算符
B.作为成员函数重载的1元运算符
C.作为友元函数重载的2元运算符
D.作为成员函数重载的2元运算符
 
 
10.类的构造函数是在定义该类的一个(??)时被自动调用执行的。
A.成员函数
B.数据成员
C.对象
D.友元函数
 
 
11.设置虚基类的目的是()。
A.简化程序
B.消除二义性
C.提高运行效率
D.减少目标代码
 
 
12.派生类的构造函数的成员初始化列表中,不能包含()。
A.基类的构造函数;
B.派生类中子对象的初始化;
C.基类的子对象初始化;
D.派生类中一般数据成员的初始化;
 
 
13.类的析构函数是一个对象被( )时自动调用的。
A.建立
B.撤消
C.赋值
D.引用
 
 
14.下列函数中,()不能重载。
A.一般的成员函数
B.一般的非成员函数
C.析构函数
D.构造函数。
 
 
15.C++的输入输出不包括( )。
A.标准的输入输出
B.文件的输入输出
C.字符串输入输出
D.显示屏和打印机的输入输出
 
 
16.实现运行时的多态性要使用( )。
A.重载函数
B.析构函数
C.构造函数
D.虚函数
 
 
17.关于纯虚函数,下列说法不正确的是( )。
A.纯虚函数是在声明虚函数时被初始化为0的函数
B.纯虚函数没有函数体
C.纯虚函数可以被调用
D.如果在一个类中声明了纯虚函数,该虚函数中在派生类中仍有可能为虚函数
 
 
18.关于构造函数,下列说法不正确的是( )。
A.构造函数名字和类名相同
B.构造函数在创建对象时自动执行
C.构造函数无任何函数返回类型
D.构造函数有且只有一个
 
 
19.下面关于引用的说法错误的是( )。
A.引用是被引用对象的别名
B.对引用的修改就是对被引用对象的修改,反之亦然
C.引用不一定立即初始化
D.引用不能建立数组
 
 
20.在关键字public后面定义的成员为类的(??)成员。
A.私有
B.公用
C.保护
D.任何
 
 
21.下面的类中,( )不是由抽象基类ios直接派生出来的。
A.istream
B.ostream
C.iostream
D.fstreambase
 
 
22.采用重载函数的目的是( )。
A.函数模板也是一个具体类型的函数
B.函数模板的类型参数与函数的参数是同一个概念
C.通过使用不同的类型参数,函数模板可以生成不同类型的函数定义
D.用函数模板定义的函数没有类型
 
 
23.派生类可以访问其基类的( )。
A.公用成员
B.保护成员
C.私有派生
D.公用和保护成员
 
 
24.C++中声明常量的关键字是()。
A.const
B.extern
C.public
D.enum
 
 
25.假定AB为一个类,则执行 “AB r1=r2;”语句时将自动调用该类的( )。
A.无参构造函数
B.带参构造函数
C.赋值重载函数
D.拷贝构造函数
 
 
26.能够释放对象所占资源的是( )。
A.析构函数
B.数据成员
C.构造函数
D.静态成员函数
 
 
27.函数原型语句正确的是( )。
A.int Function(void a)
B.void Function (int);
C.int Function(a);
D.void int(double a);
 
 
28.类的析构函数是在( )调用的。
A.类创建时
B.创建对象时
C.对象生命期结束时
D.不自动调用
 
 
29.关于C++中的继承机制,错误的说法是()。
A.虚拟继承限定基类只能通过一条路径派生出派生类;
B.解决多继承带来的二义性的方法之一是对成员名加以限定;
C.派生类的构造函数的成员初始化列表中,可包含基类中的子对象;
D.继承是一种组织类的基本手段。
 
 
30.虚函数的定义是在基类中进行的,定义时需要冠以关键字( )。
A.static
B.friend
C.virtual
D.public
 
 
二、 判断题 (共 20 道试题,共 40 分)
1.析构函数必须指定返回类型以及函数参数。
A.错误
B.正确
 
 
2.构造函数可以重载。( )
A.错误
B.正确
 
 
3.重载单目运算符作为类的成员函数,函数没有参数。( )
A.错误
B.正确
 
 
4.C++中的字符串输入输出通常指定一个字符数组作为存储空间,它只能输入输出string类数据。( )
A.错误
B.正确
 
 
5.在用class定义一个类时,如果不加声明,数据成员和成员函数默认的访问权限是public。( )
A.错误
B.正确
 
 
6.若类Y是类X的私有派生类,类Z是类Y的公用派生类,则类Z不能访问类X 的公用成员和保护成员。( )
A.错误
B.正确
 
 
7.引用可以不初始化。( )
A.错误
B.正确
 
 
8.关系运算符可以用来比较两个字符的大小,也可用来比较两个字符串的大小。( )
A.错误
B.正确
 
 
9.打开一个二进制文件时可以同时指定它既是输入文件又是输出文件。( )
A.错误
B.正确
 
 
10.使用new运算符创建数组时,可以为该数组指定初始值( )。
A.错误
B.正确
 
 
11.程序运行过程出现异常是由于语法错误引起的。
A.错误
B.正确
 
 
12.字符串"sdfgh"的长度是5。( )
A.错误
B.正确
 
 
13.C++只能用于面向对象程序设计,不适用于面向过程程序设计。( )
A.错误
B.正确
 
 
14.友元类必须被说明为公用成员。
A.错误
B.正确
 
 
15.将运算符“+”函数重载为类的成员函数,交换律不适用。( )
A.错误
B.正确
 
 
16.若类B是类A的私有派生类,类C是类B的私有派生类,则类C可访问类A的公用成员。
A.错误
B.正确
 
 
17.重载函数不能改变运算符运算对象的个数。( )
A.错误
B.正确
 
 
18.派生类能够继承基类的析构函数。
A.错误
B.正确
 
 
19.使用虚函数可以避免多重继承产生的二义性。( )
A.错误
B.正确
 
 
20.在声明派生类时,派生类把基类的的构造函数也一起继承过来。( )
A.错误
B.正确
 

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。

相关文章