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

【奥鹏】南开22春学期《程序设计基础(下)》在线作业

22春学期(高起本1709-1803、全层次1809-2103)《程序设计基础(下)》在线作业-00003

试卷总分:100  得分:100

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

1.假定X为一个类,执行X a[3],*p[2];语句时会自动调用该类的构造函数( )次。

A.2

B.3

C.4

D.5

 

2.一个顺序表第一个元素的存储地址是100,每个元素的长度为4个字节,则第5个元素的地址是( )。

A.100

B.108

C.116

D.120

 

3.下列虚基类的声明中正确的是( )。

A.class virtual B:public A

B.virtual class B:public

C.class B:public A virtual

D.class B: virtual public A

 

4.在公有派生情况下,有关派生类对象和基类对象的关系,不正确的叙述是()。

A.派生类的对象可以赋给基类对象

B.派生类的对象可以初始化基类的引用

C.派生类的对象可以直接访问基类的成员

D.派生类的对象的地址可以赋给指向基类的指针

 

5.对基类和派生类的描述中错误的是( )。

A.派生类是基类的具体化

B.基类继承了派生类的属性

C.派生类是基类定义的延续

D.派生类是基类的特殊化

 

6.在一个有向图中,所有顶点的入度之和等于所有顶点的出度之和的( )倍。

A.1

B.2

C.3

D.4

 

7.类B是类A的公有派生类,类A和类B中都定义了虚函数func(),p是一个指向类A对象的指针,则p->A::func()将( )。

A.调用类A中是函数func()

B.调用类B中是函数func()

C.根据P所指的对象类型而确定调用A中或类B中的函数func()

D.既调用类A中函数,也调用类B中的函数

 

8.下列静态数据成员的特性中,( )是错误的。

A.说明静态数据成员时前边要加关键字static来修饰

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

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

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

 

9.利用数组a[N]顺序存储一个栈时,用top表示栈顶指针,用top==-1表示栈空,并已知栈未满,当元素x进栈时所执行的操作是( )。

A.top–; a[top]=x;

B.a[top]=x; top–;

C.top++; a[top]=x;

D.a[top]=x; top++;

 

10.在一个链接队列中,假设f和r 分别是队头和队尾指针,则插入一个s结点的运算时( )。

A.f->next=s; f=s;

B.r->next=s; r=s;

C.s->next=r; r=s;

D.s->next=f; f=s;

 

11.在数据结构中,与所使用的计算机无关的是数据的( )结构。

A.逻辑

B.存储

C.逻辑和存储

D.物理

 

12.在树中,拥有相同双亲的两个结点称为( )结点。

A.兄弟

B.堂兄弟

C.父子

D.同等

 

13.线性表中的一个结点最多有( )个后继。

A.0

B.1

C.2

D.无数个

 

14.不同的对象可以调用相同名称的函数,并可导致完全不同的行为的现象称为( )。

A.多态性

B.抽象

C.继承

D.封装

 

15.下面说法中正确的是( )。

A.一个类只能定义一个构造函数,但可以定义多个析构函数

B.一个类只能定义一个析构函数,但可以定义多个构造函数

C.构造函数与析构函数同名,只要名字前加了一个求反符号(~)

D.构造函数可以指定返回类型,而析构函数不能指定任何返回类型,即使是void类型也不可以

 

16.在一个顺序循环队列中,队尾指针指向队尾元素的( )位置。

A.前一个

B.后一个

C.当前

D.最后

 

17.在类的定义形式中,数据成员、成员函数和( )组成了类定义体。

A.成员的访问控制信息

B.公有消息

C.私有消息

D.保护消息

 

18.下列关于类的继承描述中,( )是错误的。

A.派生类可以访问基类的所有数据成员,也能调用基类的所有成员函数

B.派生类也是基类,但基类不一定具有派生类的全部属性和方法

C.继承描述类的层次关系,派生类可以具有与基类相同的属性和方法

D.一个基类可以有多个派生类,一个派生类可以有多个基类

 

19.下面描述中,错误的是( )。

A.虚函数是没有实现的函数

B.纯虚函数的实现在派生类中

C.抽象类是有纯虚函数的类
奥鹏作业答案请进open5.net或请联系QQ/微信:18866732

D.抽象类指针可以指向不同的派生类

 

20.下面程序段中,说法正确的是( ) class location{ public : int GetX(); }; class rectangle:private location { public: int GetW(); };

A.类rectangle的私有派生类是location

B.类rectangle中的public成员在类 location中是私有的

C.类location中的public成员在类 rectangle中是不可访问的

D.viod f( ) { Rectangle r; int X=r .GetX( ); } 其中int X = r .GetX( );是非法语句

 

二、多选题 (共 15 道试题,共 30 分)

21.下面描述中,正确的是( )。

A.在基类定义的public成员在公有继承的派生类中可见,也能在类外被访问

B.在基类定义的public和protected成员在私有继承的派生类中可见,在类外可以被访问

C.在基类定义的public和protected成员在保护继承的派生类中可见

D.在派生类中不可见的成员要变成可访问的,需要进行访问声明

 

22.下面对对象成员的正确描述是( )。

A.可以在构造函数的初始化列表中给出对象成员的初始化

B.可以在构造函数的函数体中给出对象成员的初始化

C.如果一个对象成员有无参构造函数,则可以省略对象成员的初始化语句

D.若A类中有B类对象成员,则在创建A类对象时,先执行B类的构造函数,再执行A类的构造函数

 

23.二叉树可以采用的存储方式包括:

A.顺序存储

B.二叉链表

C.三叉链表

D.队列

 

24.下面对友元的正确描述是( )。

A.关键字friend用于声明友元

B.一个类的成员函数可以是另一个类的友元

C.友元函数访问对象的成员不受访问特性影响

D.友元函数通过this指针访问对象成员

 

25.下面对析构函数的正确描述是( )。

A.系统可以提供默认的析构函数

B.析构函数必须由用户定义

C.析构函数没有参数

D.析构函数可以设置默认参数

 

26.下面描述中,错误的是( )。

A.虚函数是没有实现的函数

B.纯虚函数是没有实现的函数

C.抽象类可以用于创建对象

D.抽象类指针可以指向不同的派生类

 

27.函数模板可以与()重载。

A.函数模板

B.普通函数

C.类模板

D.普通类

 

28.下列关于类模板的描述中,正确的是( )。

A.类模板中可以有静态数据成员

B.类模板的静态数据成员由所有该类模板实例化的模板类共享

C.类模板的静态数据成员需要在类体外进行定义和初始化

D.类模板中可以用类型形参声明静态数据成员

 

29.如果类A继承了类B,则类A称为()。

A.派生类

B.继承类

C.子类

D.父类

 

30.下列关于类的常量数据成员的说法中,正确的是( )。

A.常量数据成员只能是公有成员

B.可以在构造函数的初始化列表中为常量数据成员赋初值

C.可以在构造函数的函数体中为常量数据成员赋初值

D.常量数据成员的值初始化后就只能访问、无法修改

 

31.下面描述中,正确的是( )。

A.使用fstream类必须包含头文件fstream

B.ostream对象用来实现输出操作

C.ios是iostream的直接基类

D.iostream是通过多重继承得到的派生类

 

32.下列关于类的常量成员函数的说法中,正确的是( )。

A.只有类的成员函数可以在函数头后面加const关键字

B.在常量成员函数中可以获取成员变量的值、但不能修改

C.在常量成员函数中只能访问常量数据成员

D.在类体外定义常量成员函数时,函数头后面的const关键字可以省略

 

33.下列函数中,可以作为虚函数的是( )。

A.普通成员函数

B.构造函数

C.静态成员函数

D.析构函数

 

34.如果类A继承了类B,则类B称为()。

A.派生类

B.基类

C.子类

D.父类

 

35.下列关于类的常量数据成员的说法中,正确的是( )。

A.一个类的常量数据成员必须在类体中初始化

B.一个类的常量数据成员由该类的所有对象共享

C.一个类的常量数据成员对于该类的不同对象可以取不同的值

D.使用const关键字可以将一个数据成员声明为常量数据成员

 

三、判断题 (共 15 道试题,共 30 分)

36.根据二叉树的中序遍历序列并不能确定二叉树的根结点。

 

37.深度优先遍历类似于树的先序遍历。

 

38.含有纯虚函数的类是抽象类。

 

39.类非成员函数形式的运算符重载函数通常采用友元函数,是为了在运算符重载中方便访问类中的非公有成员。

 

40.说明或定义对象时,类名前面不需要加class关键字。

 

41.邻接链表只能用于有向图的存储,邻接矩阵对于有向图和无向图的存储都适用。

 

42.线性结构的特点是只有一个结点没有前驱,只有一个结点没有后继,其余的结点只有一个前驱和后继。

 

43.用邻接链表存储一个图时,边数越多,占用的存储空间越大。

 

44.如果某个有向图的邻接链表中第i个顶点的链表为空,则第i个顶点的入度为零。

 

45.在树中,一个结点的后继结点称为该结点的孩子,相应地,一个结点的前驱结点称为该结点的双亲。

 

46.边上带权的图就称为带权图。

 

47.getline()函数从流中提取终止字符,但终止字符被丢弃。

 

48.根据二叉树的先序遍历序列并不能确定二叉树的根结点。

 

49.线性表的链式存储结构是可以用不连续的的存储单元来存储线性表中的数据元素。

 

50.顺序表能够存放的最大元素数量n称为线性表的长度。

转载请注明:奥鹏作业之家 » 【奥鹏】南开22春学期《程序设计基础(下)》在线作业

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

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

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