西安交通大学18年9月课程考试《面向对象程序设计(高起专)》作业考核试题答案满分答案
西安交通大学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
正确选项:----
西安交通大学18年9月课程考试《面向对象程序设计(高起专)》作业考核试题答案多选题答案
二、 判断题 (共 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.正确
西安交通大学18年9月课程考试《面向对象程序设计(高起专)》作业考核试题答案历年参考题目如下: