南开21春学期《程序设计基础下》在线作业7.docx
- 文档编号:897993
- 上传时间:2022-10-13
- 格式:DOCX
- 页数:11
- 大小:17.44KB
南开21春学期《程序设计基础下》在线作业7.docx
《南开21春学期《程序设计基础下》在线作业7.docx》由会员分享,可在线阅读,更多相关《南开21春学期《程序设计基础下》在线作业7.docx(11页珍藏版)》请在冰豆网上搜索。
南开21春学期《程序设计基础下》在线作业7
奥鹏南开作业21春学期(1709、1803、1809、1903、1909、2021、2021、2103)《程序设计基础(下)》在线作业
下列类中()是输入/输出流类iostream的派生类。
选项A:
fstream
选项B:
ofstream
选项C:
ifstream
选项D:
ostream
正确选项:
A
下面描述中,错误的是()。
选项A:
在基类定义的public成员在公有继承的派生类中可见,也能在类外被访问
选项B:
在基类定义的public和protected成员在私有继承的派生类中可见,在类外可以被访问
选项C:
在基类定义的public和protected成员在保护继承的派生类中可见
选项D:
在派生类中不可见的成员要变成可访问的,需要进行访问声明
正确选项:
B
在一个链接队列中,假设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;
正确选项:
B
运算符delete删除一个动态对象时()。
选项A:
首先为该动态对象调用构造函数,再释放其占用的内存
选项B:
首先释放该动态对象占用的内存,再为其调用构造函数
选项C:
首先为该动态对象调用析构函数,再释放其占用的内存
选项D:
首先释放动态对象占用的内存,再为其调用析构函数
正确选项:
C
关于类和对象不正确的说法是()。
选项A:
类是一种类型,它封装了数据和操作
选项B:
对象是类的实例
选项C:
一个类的对象只有一个
选项D:
一个对象必属于某个类
正确选项:
C
将含100个结点的完全二叉树从根这一层开始,每层从左至右依次对结点编号,根结点的编号为1。
编号为47的结点X的双亲的编号为()。
选项A:
23
选项B:
24
选项C:
25
选项D:
无法确定
正确选项:
A
在一个链接队列中,假设f和r分别是队头和队尾指针,则删除一个结点的运算时()。
选项A:
r=f->next;
选项B:
r=r->next;
选项C:
f=f->next;
选项D:
f=r->next;
正确选项:
C
在一个具有n个顶点的有向图中,若所有顶点的入度之和为s,则所有顶点的度之和为()。
选项A:
s
选项B:
s+1
选项C:
s-1
选项D:
2s
正确选项:
D
继承具有(),即当基类本身也是某一个类的派生类时,底层的派生类也会自动继承间接基类的成员。
选项A:
规律性
选项B:
传递性
选项C:
重复性
选项D:
多样性
正确选项:
B
在下列关键字中,用以说明类中公有成员的是()。
选项A:
public
选项B:
private
选项C:
protected
选项D:
friend
正确选项:
A
下面对析构函数的正确描述是()。
选项A:
系统不能提供默认的析构函数
选项B:
析构函数必须由用户定义
选项C:
析构函数没有参数
选项D:
析构函数可以设置默认参数
正确选项:
C
在二叉树的第i层上至多有()个结点(i≥1)。
选项A:
2的i次方减1
选项B:
2的i-1次方
选项C:
2的i次方加+1
选项D:
2的i+1次方
正确选项:
B
下列虚基类的声明中正确的是()。
选项A:
classvirtual选项B:
publicA
选项B:
virtualclass选项B:
public
选项C:
class选项B:
publicAvirtual
选项D:
class选项B:
virtualpublicA
正确选项:
D
C++有()种联编方式。
选项A:
1
选项B:
2
选项C:
3
选项D:
4
正确选项:
B
下列说法中错误的是()。
选项A:
公有继承时基类中的public成员在派生类中是public的
选项B:
公有继承时基类中的private成员在派生类中是不可访问的
选项C:
私有继承时基类中的public成员在派生类中是private的
选项D:
私有继承时基类中的public成员在派生类中是protected的
正确选项:
D
友元关系不能()。
选项A:
继承
选项B:
是类与类之间是关系
选项C:
是一个类的成员函数与另一个类的关系
选项D:
提高程序的运行效率
正确选项:
A
当一个派生类公有继承一个基类时,基类中的所有公有成员成为派生类的()。
选项A:
public成员
选项B:
private成员
选项C:
protected成员
选项D:
友元
正确选项:
A
下面关于友元的描述中,错误的是()。
选项A:
友元函数可以访问该类的私有数据成员
选项B:
一个类的友元类中的成员函数都是这个类的友元函数
选项C:
友元可以提高程序的运行效率
选项D:
类与类之间的友元关系可以继承
正确选项:
D
有关析构函数的说法不正确的是()。
选项A:
析构函数有且仅有一个
选项B:
析构函数和构造函数一样可以有形参
选项C:
析构函数的功能是用来释放一个对象
选项D:
析构函数无任何函数类型
正确选项:
B
撤消对象时,系统自动调用()函数。
选项A:
成员函数
选项B:
构造函数
选项C:
析构函数
选项D:
普通函数
正确选项:
C
如果类A继承了类B,则类A称为()。
选项A:
派生类
选项B:
继承类
选项C:
子类
选项D:
父类
正确选项:
A,C
下列函数中,不可以作为虚函数的是()。
选项A:
普通函数
选项B:
构造函数
选项C:
静态成员函数
选项D:
析构函数
正确选项:
A,B,C
下面哪些数据结构属于非线性结构
选项A:
线性表
选项B:
树
选项C:
图
选项D:
集合
正确选项:
B,C,D
在派生类中可以直接访问基类的()。
选项A:
公有成员
选项B:
保护成员
选项C:
私有成员
选项D:
友元成员
正确选项:
A,B
下面关于自定义类的运算符重载的说法中,正确的是()。
选项A:
赋值运算符和下标运算符只能重载为类的成员函数
选项B:
赋值运算符和下标运算符只能重载为类的友元函数
选项C:
赋值运算符重载时一般以引用方式返回*this,表示返回赋值运算符的左操作数
选项D:
使用重载的赋值运算符时,左操作数一定是自定义类型
正确选项:
A,C,D
已知Derived是Base的公有派生类,且已定义两个对象Derivedd;和Baseb;,则下列语句中正确的是()。
选项A:
d=b;
选项B:
b=d
选项C:
Derived*d=
选项D:
Base
正确选项:
B,D
下面关于自定义类的运算符重载的说法中,正确的是()。
选项A:
除了后增后减单目运算符外,其他运算符重载为类的成员函数时,函数参数个数比运算符实际操作数个数少一个
选项B:
运算符重载为类的成员函数时,函数中的this指针指向第一个运算数
选项C:
只有运算符的第一个运算数是自定义类类型时,才能将该运算符重载为类的成员函数
选项D:
所有运算符都可以以类成员函数形式进行重载
正确选项:
A,B,C
已知f是以二进制读写方式打开的文件流对象,且有int型变量a,则下列选项中能正确进行文件读写操作的语句包括()。
选项A:
f.write((char*)a,sizeof(a));
选项B:
f.write((char*)
选项C:
f.read((char*)a,sizeof(a));
选项D:
f.read((char*)
正确选项:
B,D
系统提供的默认拷贝构造函数实现的是“浅拷贝”,下列关于浅拷贝的说法中正确的是()。
选项A:
当一个类中有指针成员变量时,浅拷贝有可能会导致一片内存被重复释放
选项B:
当一个类中有指针成员变量时,浅拷贝有可能导致一个对象中保存的数据不正确
选项C:
如果一个类中只有int型和double型的成员变量,则浅拷贝不会出现任何问题
选项D:
如果一个类中有一个成员变量是char型数组,则使用浅拷贝会存在问题
正确选项:
A,B,C
不论派生类以何种方法继承基类,都可以使用基类的()。
选项A:
public成员
选项B:
private成员
选项C:
protected成员
选项D:
所有成员
正确选项:
A,C
已知Circle类定义如下所示,则下列说法正确的是()。
classCircle
{
public:
doublem_x,m_y;
doublem_radius;
voidsetCenter(doublex,doubley)
{
m_x=x;
m_y=y;
}
voidsetRadius(doubleradius)
{
m_radius=radius;
}
doublegetArea()
{
return3.14*m_radius*m_radius;
}
};
选项A:
m_x、m_y和m_radius都是Circle类的成员变量
选项B:
setCenter、setRadius和getArea都是Circle类的成员函数
选项C:
类定义体后面的分号可以省略
选项D:
将doublem_radius;改为doublem_radius=1;,则表示m_radius成员变量的初值为1
正确选项:
A,B
下面选项中,是类的成员函数为()。
选项A:
构造函数
选项B:
析构函数
选项C:
友元函数
选项D:
缺省参数的构造函数
正确选项:
A,B,D
下面描述中,正确的是()。
选项A:
多重继承中,派生类对象被销毁时析构函数的调用顺序与派生类对象创建时构造函数的调用顺序相反
选项B:
多重继承中,派生类对象被销毁时析构函数的调用顺序与派生类对象创建时构造函数的调用顺序一致
选项C:
多重继承中创建派生类对象时各基类构造函数的调用顺序与基类构造函数在初始化列表中的出现顺序一致
选项D:
多重继承中,如果派生类的初始化列表中没有某个基类构造函数的调用语句,则表示调用该基类的无参构造函数
正确选项:
A,D
下列函数中,可以作为虚函数的是()。
选项A:
普通成员函数
选项B:
构造函数
选项C:
静态成员函数
选项D:
析构函数
正确选项:
A,D
下列成员中,不能被派生类继承的包括()。
选项A:
公有成员
选项B:
构造函数
选项C:
保护成员
选项D:
析构函数
正确选项:
B,D
类模板可以生成若干个模板类,每个模板类又可定义若干个对象。
选项A:
对
选项B:
错
正确选项:
A
n个结点的无向图,若它有n(n-1)/2条边,则它一定是连通图。
选项A:
对
选项B:
错
正确选项:
A
一个结点的后继的数目称为该结点的度;树中各结点度的最大值称为树的度。
选项A:
对
选项B:
错
正确选项:
A
可以在队列的任意位置插入元素。
选项A:
对
选项B:
错
正确选项:
B
非线性结构即可以用顺序存储结构存储、也可以用非顺序存储结构存储。
选项A:
对
选项B:
错
正确选项:
B
线性表中的一个结点可以有多个前驱和多个后继
选项A:
对
选项B:
错
正确选项:
B
强连通图的各顶点间均可达。
选项A:
对
选项B:
错
正确选项:
A
二叉树就是结点度为小于等于2的树。
选项A:
对
选项B:
错
正确选项:
A
二叉树就是结点度都是为2的树。
选项A:
对
选项B:
错
正确选项:
B
运算符重载实际上是对已有的运算符重新定义其功能。
选项A:
对
选项B:
错
正确选项:
A
图说的是数据的逻辑结构。
选项A:
对
选项B:
错
正确选项:
A
构造函数和析构函数都不能重载。
选项A:
对
选项B:
错
正确选项:
B
多继承情况下,派生类的构造函数中基类构
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 程序设计基础下 南开 21 学期 程序设计 基础 在线 作业