西工大《面向对象程序设计C++》作业机考参考答案.docx

上传人:b****5 文档编号:11829930 上传时间:2023-04-03 格式:DOCX 页数:12 大小:19.11KB
下载 相关 举报
西工大《面向对象程序设计C++》作业机考参考答案.docx_第1页
第1页 / 共12页
西工大《面向对象程序设计C++》作业机考参考答案.docx_第2页
第2页 / 共12页
西工大《面向对象程序设计C++》作业机考参考答案.docx_第3页
第3页 / 共12页
西工大《面向对象程序设计C++》作业机考参考答案.docx_第4页
第4页 / 共12页
西工大《面向对象程序设计C++》作业机考参考答案.docx_第5页
第5页 / 共12页
点击查看更多>>
下载资源
资源描述

西工大《面向对象程序设计C++》作业机考参考答案.docx

《西工大《面向对象程序设计C++》作业机考参考答案.docx》由会员分享,可在线阅读,更多相关《西工大《面向对象程序设计C++》作业机考参考答案.docx(12页珍藏版)》请在冰豆网上搜索。

西工大《面向对象程序设计C++》作业机考参考答案.docx

西工大《面向对象程序设计C++》作业机考参考答案

西工大2020年4月《面向对象程序设计(C++)》作业机考参考答案

试卷总分:

100得分:

94

要答案:

wangjiaofudao

一、单选题(共50道试题,共100分)

1.在多继承中,公有派生和私有派生对于基类成员在派生类中的可访问性的规则()。

A.完全相同

B.完全不同

C.部分相同,部分不同

D.以上全不对

正确答案:

A

2.若Sample类中的一个成员函数说明如下:

A.指向类Sample的名为a的指针

B.a是类Sample的对象引用,用来作函数Set()的形参

C.将a的地址赋给变量Set

D.变量Sample与a按位与的结果作为函数Set的参数

正确答案:

B

3.有关类和对象的说法错误的是()。

A.对象是类的一个实例

B.任何一个对象只能属于一个具体的类

C.一个类只能有一个对象

D.类与对象的关系和数据和变量的关系相似

正确答案:

C

4.在C++中,函数原型不能标识()。

A.函数的返回类型

B.函数参数的个数

C.函数参数类型

D.函数的功能

正确答案:

D

5.下列运算符中,()运算符在C++中不能重载。

A.?

B.+

C._

D.<=

正确答案:

6.catch(……)一般放在其他catch子句的后面,该子句()。

A.抛掷异常

B.捕获所有类型的异常

C.检测并处理异常

D.有语法错误

正确答案:

7.关于成员函数特征的下述描述中,()是错误的。

A.成员函数一定是内联函数

B.成员函数可以重载

C.成员函数可以设置参数的默认值

D.成员函数可以是静态的

正确答案:

8.下列说法错误的是()。

A.如果try块中没有抛出异常,则try块执行完后忽略该try块的异常处理器catch块,程序在最后一个catch块后恢复执行。

B.如果在try块以外抛出异常,程序将被终止。

C.try块抛出异常后,从对应的try块开始到异常被抛出之间所构造的所有自动对象将被析构。

D.抛出异常和异常处理必须放在同一个函数中。

正确答案:

9.实现运行时的多态要使用()。

A.重载函数

B.构造函数

C.析构函数

D.虚函数

正确答案:

10.公有成员提供了类对外部的界面,私有成员只能被类的成员访问,而()不允许外界访问,但允许派生类的访问,这样既有一定的隐藏能力,有提供了开放的界面

A.公有成员

B.私有成员

C.私有成员函数

D.保护成员

正确答案:

11.通常的拷贝初始化构造函数的参数是()。

A.某个对象名

B.某个对象的成员名

C.某个对象的引用名

D.某个对象的指针名

正确答案:

12.有关析构函数的说法错误的是()。

A.析构函数有且只有一个

B.析构函数无任何函数类型

C.析构函数和析构函数一样可以有形参

D.析构函数的作用是在对象被撤销时收回先前分配的内存空间

正确答案:

13.有关构造函数的说法错误的是()。

A.构造函数的名字和类的名字一样

B.构造函数在说明类变量时自动执行

C.构造函数无任何函数类型

D.构造函数有且只有一个

正确答案:

14.下面函数模板定义中不正确的是()。

A.template

B.template

C.template

D.template

正确答案:

15.在C++中把不返回任何类型的函数应该说明为()。

A.int

B.char

C.void

D.double

正确答案:

16.如果一个类至少有一个虚函数,那么就称该类为()。

A.抽象类

B.虚基类

C.派生类

D.以上都不对

正确答案:

17.已知P是一个指向Sample数据成员m的指针,s是类Sample的一个对象。

如果要给m赋值为5,()是正确的。

A.s.p=5

B.s->p=5

C.s.*p=5

D.*s.p=5

正确答案:

18.关于read()函数的下列描述中,()是对的。

A.该函数是用来从键盘输入中获取字符串

B.该函数所获得的字符的多少是不受限制的

C.该函数只能用于文本文件的操作

D.该函数只能按规定读取所指定的字符数

正确答案:

19.在重载一运算符时,若运算符函数的形参表中没有参数,则不可能的情况是()。

A.该运算符是一个单目运算符

B.该运算符函数有一个隐含的参数this

C.该运算符函数是类的成员函数

D.该运算符函数是类的友元函数

正确答案:

20.()不是构造函数的特征。

A.构造函数的函数名和类名相同

B.构造函数可以重载

C.构造函数可以设置默认参数

D.构造函数必须指定函数类型说明

正确答案:

21.已知一个类Sample,()是定义指向类Sample成员函数的指针,假设类有3个公有成员:

voidf1(int),voidf2(int),inta。

A.Sample*p

B.intSample:

:

*pc=&Sample:

:

a

C.void(Sample:

:

*pa)(int)

D.Sample*a[10]

正确答案:

22.关于虚函数和抽象类的描述中,()是错误的。

A.纯虚函数是一种特殊的虚函数,它没有具体的定义

B.抽象类是指具有纯虚函数的类

C.一个基类中说明有纯虚函数,该基类的派生类一定不在是抽象类

D.抽象类只能作为基类来使用,其纯虚函数的定义由派生类给出

正确答案:

23.下列输出字符’A’的方法中,()是错误的。

A.cout<

B.cout<<’A’

C.cout.put(‘A’)

D.charA=’A’;cout<

正确答案:

24.友元运算符obj1>obj2被C++编译器解释为()。

A.operator>(obj1,obj2)

B.>(obj1,obj2)

C.obj2.operator>(obj1)

D.obj1.operator>(obj2)

正确答案:

25.对虚函数的调用()。

A.一定使用动态联编

B.必须使用动态联编

C.一定使用静态联编

D.不一定使用动态联编

正确答案:

26.使用如setw()的操作符对数据进行格式输出时,应包含()文件。

A.iostream.h

B.fstream.h

C.iomainp.h

D.stdlib.h

正确答案:

27.已知f1(int)是类A的公有成员函数,p是指向成员函数f1的指针,采用赋值()是正确的。

A.p=f1

B.p=A:

:

f1

C.p=A:

:

f1()

D.p=f1()

正确答案:

28.在成员函数中进行双目运算符重载时,其参数表中应带有()个参数。

A.0

B.1

C.2

D.3

正确答案:

29.一个函数功能不太复杂,但要求被频繁调用,选用()。

A.内联函数

B.重载函数

C.递归函数

D.嵌套函数

正确答案:

30.下面运算符中,不能被重载的运算符是()。

A.<=

B.-

C.?

:

D.[]

正确答案:

31.继承具有()即当基类本身也是某一个类的派生类时,底层的派生类也会自动继承间接基类的成员。

A.规律性

B.传递性

C.重复性

D.多样性

正确答案:

32.()是析构函数的特征。

A.一次类中只能定义一个析构函数

B.析构函数名与类名不同

C.析构函数的定义只能在类体内

D.析构函数可以有一个或多个参数

正确答案:

33.在C++中,打开一个文件就是将这个文件与一个()建立关联;关闭一个文件就是取消这种关联。

A.类

B.流

C.对象

D.结构

正确答案:

34.关于getline()函数的下列描述中,()是错误的。

A.该函数是用来从键盘上读取字符串

B.该函数读取的字符串长度是受限制的

C.该函数读取字符串时,遇到终止符时便停止

D.该函数所使用的默认终止符是换行符

正确答案:

35.cin是istream的一个对象,用于处理标准输入。

cout、cerr和clog是()的对象,cout处理标准输出,cerr和clog都处理标准出错信息,只是cerr输出不带缓冲,clog输出带缓冲。

A.istream

B.ostream

C.cerr

D.clog

正确答案:

36.文件的I/O由ifstream.h、ofstream、fstream三个类提供。

istream.h是istream的派生类,处理文件输入;ofstream是ostream的派生类,处理文件输出;fstream是ostream的派生类,可以同时处理文件的I/O,使用I/O类的程序需要包含头文件()。

A.istream.h

B.fstream.h

C.ifstream.h

D.istrstream

正确答案:

37.关于动态联编的下列描述中,()是错误的。

A.动态联编是以虚函数为基础的

B.动态联编是在运行时确定所调用的函数代码的

C.动态联编用调用函数操作是指向对象的指针或对象的引用

D.动态联编是在编译时确定执行函数的

正确答案:

38.C++中用三个保留字实现异常的处理,除了try和catch外,还有()。

A.if

B.class

C.throw

D.return

正确答案:

39.已知inta,*pa=&a;输出指针pa十进制的地址值的方法是()。

A.cout<

B.cout<<*pa

C.cout<<&pa;

D.cout<

正确答案:

40.C++中的类有两种用法:

一种是类的实例话,即生成类的对象,并参与系统的运行;另一种是通过()派生出新的类。

A.复用

B.继承

C.单继承

D.多继承

正确答案:

41.下述静态数据成员的特征中,()是错误的。

A.说明静态数据成员时前边要加修饰符static

B.静态数据成员要在类体外进行初始化

C.引用静态成员时,要在静态数据成员名前加“类名”和作用域运算符

D.静态数据成员不是所有对象所共用的

正确答案:

42.C++语言本身没有定义I/O操作,但I/O操作包含在C++实现中。

C++标准库iostream提供了基本的I/O类。

I/O操作分别由两个类istream和ostream提供,由他们派生出一个类(),提供双向的I/O操作。

使用I/O流的程序需要包含iostream.h。

A.iostream

B.iostream.h

C.ostream

D.cin

正确答案:

43.与C语言printf("Hello,World\n");语句功能相同的C++语句是()。

A.cout>>"Hello,World\n"

B.cout<<"Hello,World\n"

C.cin>>"Hello,World\n"

D.cin<<"Hello,World\n"

正确答案:

44.有关类的说法错误的是()。

A.类是一种用户自定义的数据类型

B.只有类的成员函数才能存取类中的私有数据

C.只类中,如果不作特别说明,所指的数据均为私有数据

D.只类中,如果不作特别说明,所指的成员函数均为公有类型

正确答案:

45.下列关于运算符重载的描述中,()是正确的。

A.运算符重载可以改变操作数的个数

B.运算符重载可以改变运算符的优先级

C.运算符重载可以改变结合性

D.运算符重载不可以改变语法结构

正确答案:

46.基类的()不能为派生类的成员访问,基类的公有成员在派生类中的性质和继承的性质一样,而基类的保护成员在私有继承时在派生类中成为私有成员,在公有和保护继承时在派生类中仍为保护成员

A.公有成员

B.私有成员

C.私有成员函数

D.保护成员

正确答案:

47.下列运算符中,()运算符在C++中不能重载。

A.&&

B.[]

C.:

:

D.new

正确答案:

48.进行文件操作时需要包含()文件。

A.istream.h

B.fstream.h

C.stdio.h

D.stdlib.h

正确答案:

49.关于虚函数的描述中,()是正确的。

A.虚函数是一个Static类型的成员函数

B.虚函数是一个非成员函数

C.基类中说明了虚函数后,派生类中其对应的函数可不必说明虚函数

D.派生类的虚函数与基类的虚函数具有不同的参数个数和类型

正确答案:

50.派生可以分为公有派生、私有派生。

由私有派生得到的派生类,其基类的所以成员都只能成为它的私有成员,这些私有成员只能被派生类的成员函数访问,而通过()无权访问它;公有派生的意义是基类中所有成员在派生;类中也有都是公有的。

A.公有派生

B.派生类的对象

C.私有派生

D.派生类的构造函数

正确答案:

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > PPT模板 > 商务科技

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1