最新消息:可做奥鹏等各院校作业论文,答案请联系QQ/微信:18866732

东师C++程序设计20春在线作业2【标准答案】

C++程序设计20春在线作业2题目

试卷总分:100  得分:100

一、单选题 (共 20 道试题,共 60 分)

1.在声明类时,下面的说法正确的是()。

A.可以在类的声明中给数据成员赋初值

B.数据成员的数据类型可以是register

C.private、public、protected可以按任意顺序出现

D.没有用private、public、protected定义的数据成员是公有成员

 

2.类的析构函数是在()被调用的。

A.类创建时

B.创建对象时

C.删除对象时

D.不自动调用

 

3.下面对类的构造函数的定义是() 。

A.void X::X( 参数 )

B.X::X( 参数 )

C.int X::X( 参数 )

D.float X::X( 参数 )

 

4.重载赋值操作符时,应声明为()函数。

A.友元

B.虚

C.成员

D.多态

 

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

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

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

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

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

 

6.下列()的调用方式是引用调用。

A.形参是引用,实参是变量

B.形参和实参都是变量

C.形参是变量,实参是地址值

D.形参是指针,实参是地址值

 

7.进行文件操作需包含头文件()。

A.fstream.h

B.ostream.h

C.stdio.h

D.stdlib.h

 

8.若已定义了person类及person类的两个对象p1和p2,则执行语句”p1=p2;”将调用p1的()。

A.构造函数

B.拷贝构造函数

C.析构函数

D.赋值运算符重载函数

 

9.编译时的多态性通过使用() 实现。

A.构造函数

B.虚函数

C.重载函数

D.析构函数

 

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

A.一定使用动态联编

B.一定使用静态联编

C.一定使用指针

D.不一定使用动态联编

 

11.下面叙述不正确的是()。

A.基类的保护成员在保护派生类中仍然是保护的

B.基类的保护成员在公有派生类中仍然是保护的

C.基类的保护成员在私有派生类中仍然是保护的

D.对基类成员的访问必须是无二义性的

 

12.假设已经有定义char*const name=”chen”; 下面的语句中正确的是()。

A.name[3]= ‘q’;

B.name=”lin”;

C.name=new char[5];

D.name=new char (‘q’) ;

 

13.以下有关继承的叙述正确的是()。

A.构造函数和析构函数都能被继承

B.派生类是基类的组合

C.派生类对象除了能访问自己的成员以外,不能访问基类中的所有成员

D.基类的公有成员一定能被派生类的对象访问

 

14.下面的叙述中,错误的是()。

A.析构函数可以定义为虚函数

B.构造函数可以定义为虚函数

C.当基类的析构函数定义为虚函数时,其派生类的析构函数也一定是虚函数

D.对虚析构函数的调用可以采用动态联编

 

15.面向对象的程序设计语言必须具备的关键要素是()。

A.抽象和封装

B.抽象和多态性

C.抽象、封装、继承和多态性

D.抽象、封装和继承性

 

16.建立包含有对象成员的派生类对象时,自动调用构造函数的执行顺序依次为()的构造函数。

A.基类、自己所属类、对象成员所属类

B.对象成员所属类、基类、自己所属类

C.自己所属类、对象成员所属类、基类

D.基类、对象成员所属类、自己所属类

 

17.假定classA为一个类,如果用户未定义析构函数,则系统为该类定义的默认析构函数为()。

A.classA::~classA(){}

B.classA::classA(){}

C.classA::~classA(int=0){}

D.void classA::~classA(){}

 

18.静态数据成员的初始化必须在()。

A.类内

B.类外

C.在构造函数内

D.静态成员函数内

 

19.下列关于纯虚函数的描述中,正确的是()。

A.纯虚函数是一种特殊的虚函数,它是个空函数

B.具有纯虚函数的类称为虚基类

C.一个基类中说明有纯虚函数,其派生类一定要实现该纯虚函数

D.具有纯虚函数的类不能创建类对象

 

20.运算符重载函数必须以特殊的关键字()开始。

A.virtual

B.operator

C.template

D.static

 

二、判断题 (共 20 道试题,共 40 分)

21.构造函数是可以被派生类继承的。

 

22.要对文件进行读写操作,必须在文件开头包含头文件fstream.h

 

23.在C++中,构造派生类对象时,总是先从基类的初始化开始的。

 

24.重载函数是基于不同的数据类型完成类似的操作,而函数模板则是对不同的数据类型完成相同的操作。

 

25.私有静态数据成员不能被类外部函数访问,也不能用对象进行访问。

 

26.静态的成员函数没有隐含的this指针 ,所以它们只能访问静态的数据成员。

 

27.公有继承方式下,基类成员的访问权限在派生类中保持不变。

 

28.C++中的函数就是面向对象理论中的消息。

 

29.C++不允许定义有默认参数的函数。

 

30.一个派生类继承多个基类称为多继承。

 

31.重载函数至少在参数个数、参数类型或参数顺序上要有所不同。

 

32.get()和put()函数的功能是一次读写一个字符,而read()和write()函数是一次读写一个数据块。

 

33.构造函数和析构函数都可以是虚函数。

 

34.操纵符函数setw(n)只对下一个输出有效。

 

35.C++允许通过重载的方式改变运算符的优先级和结合性。

 

36.若有声明:class C: public A,B{};则类C公有继承自类A、私有继承自类B。

 

37.赋值号两边的数据类型不一致时,将无法进行赋值运算。

 

38.C++编译器不能够区分重载的无参函数和缺省参数的函数。

 

39.一个类的友元一定是另一个类的成员函数。

 

40.类是C++中自定义的数据类型。

转载请注明:奥鹏作业之家 » 东师C++程序设计20春在线作业2【标准答案】

发表我的评论
取消评论
表情

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址