馁锌架霓河衬邓篓咖唐汹窘乔
对应课程:点击查看
起止时间:2020-03-09到2020-07-31
更新状态:已完结
第7章 面向对象程序设计之一(1) 单元测验7-1
1、 下列关于类的描述中,错误的是( )。
A:类可认为是一种数据类型
B:用类所定义出的变量称为对象
C:类包含数据成员和函数成员
D:类成员的访问权限有2种
答案: 类成员的访问权限有2种
2、 下列哪种思想不属于面向对象程序设计?( )
A:抽象
B:封装
C:继承
D:模块化
答案: 模块化
3、 假设编写一个教务管理系统,通过分析可以抽象出若干个类,其中应不包括下列哪个类?( )
A:学生类
B:教师类
C:课程类
D:宿舍类
答案: 宿舍类
4、 下列关于类的描述中,错误的是( )。
A:类的数据成员也被称作属性
B:类的函数成员也被称作方法
C:面向对象中的分类被称作是抽象
D:可以用流程图来描述类的设计
答案: 可以用流程图来描述类的设计
5、 下列关于类定义语法的描述中,错误的是( )。
A:定义类时需使用关键字class
B:类定义代码通常分为声明和实现2部分
C:完整的函数定义代码通常放在类实现部分
D:不同类的成员之间不能重名
答案: 不同类的成员之间不能重名
6、 下列关于数据成员的描述中,错误的是( )。
A:数据成员用于保存数据
B:数据成员的的类型只能是基本数据类型
C:类中的数据成员之间不能重名
D:声明数据成员不能初始化
答案: 数据成员的的类型只能是基本数据类型
7、 下列关于函数成员的描述中,错误的是( )。
A:函数成员的功能通常是对本类中数据成员进行处理
B:函数成员访问本类中数据成员时需先定义,后访问
C:类中的函数成员之间可以重名,即重载函数
D:函数成员的完整定义代码可以放在声明部分,此时该函数被默认为内联函数
答案: 函数成员访问本类中数据成员时需先定义,后访问
8、 类成员的访问权限不包括下列哪种权限?( )
A:public
B:private
C:protected
D:inline
答案: inline
9、 下列关于对象的描述中,错误的是( )。
A:对象是用类定义的变量,也可称为是类的实例
B:一个对象所占的内存空间等于其类中所有数据成员所占内存的总和
C:一个对象只属于某一个类
D:一个类只能定义一个对象
答案: 一个类只能定义一个对象
10、 已定义一个圆的类Circle:class Circle
{
private: double r;
public:
void SetR(double x) { r = x; }
double GetArea( ) { return 3.14rr; }
};下列计算圆面积的代码中,正确的是( )。
A:Circle c; c.r = 10.5; cout << 3.14c.rc.r;
B:Circle c; c.SetR(10.5); cout << c.GetArea( );
C:Circle c; cout << c.GetArea( );
D:Circle c; SetR(10.5); cout << GetArea( );
答案: Circle c; c.SetR(10.5); cout << c.GetArea( );
11、 已定义一个圆的类Circle:class Circle
{
private: double r;
public:
void SetR(double x) { r = x; }
double GetArea( ) { return 3.14rr; }
};下列计算圆面积的代码中,正确的是( )。
A:Circle c, p = &c; p.SetR(10.5); p.GetArea( );
B:Circle c, p = c; p->SetR(10.5); p->GetArea( );
C:Circle c, p = &c; p->SetR(10.5); p->GetArea( );
D:Circle c, p = &c; p->GetArea( );
答案: Circle c, *p = &c; p->SetR(10.5); p->GetArea( );
第7章 面向对象程序设计之一(2) 单元测验7-2
1、 下列关于构造函数的描述中,错误的是( )。
A:定义构造函数的目的主要是为了在创建对象时初始化对象的数据成员
B:构造函数在创建对象时被自动调用。每创建一个对象,构造函数即被调用一次
C:每个类可以定义多个构造函数,以实现不同的初始化方法
D:构造函数应定义为类的私有成员
答案: 构造函数应定义为类的私有成员
2、 下列类ABC中所定义的构造函数,错误的是( )。
A:class ABC
{
private: int x, y;
public:
ABC( ) { x = 0; y = 0; }
ABC(int a, int b) { x = a; y = b; }
};
B:class ABC
{
private: int x, y;
public:
ABC( ) { x = 0; y = 0; }
ABC(int a, int b);
};
ABC::ABC(int a, int b) { x = a; y = b; }
C:class ABC
{
private: int x, y;
public:
ABC(int a = 0, int b = 0);
};
ABC::ABC(int a, int b) { x = a; y = b; }
D:class ABC
{
private: int x = 0, y = 0;
public:
void Abc(int a, int b) { x = a; y = b; }
};
答案: class ABC
{
private: int x = 0, y = 0;
public:
void Abc(int a, int b) { x = a; y = b; }
};
3、 类ABC的默认构造函数是( )。
A:ABC( ) { }
B:void ABC( ) { }
C:Abc( ) { }
D:ABC( ) { x = 0; y = 0; }
答案: ABC( ) { }
4、 已定义类ABC:class ABC
{
private: int x, y;
public:
ABC( ) { x = 0; y = 0; }
ABC(int a, int b) { x = a; y = b; }
};执行定义对象语句:ABC obj; 则自动调用哪个构造函数?( )
A:ABC( )
B:ABC(int a, int b)
C:依次调用这2个构造函数
D:不调用任何构造函数
答案: ABC( )
5、 已定义类ABC:class ABC
{
private: int x, y;
public:
ABC(int a, int b) { x = a; y = b; }
};则下列定义对象语句中,错误的是( )。
A:ABC obj;
B:ABC obj(5, 10);
C:ABC obj(5, 5+5);
D:ABC *pobj = new ABC(5, 10);
答案: ABC obj;
如需购买完整答案,请点击下方红字:
获取更多中国大学慕课答案,请点击这里,进入mooc.mengmianren.com
卿省洗门蔫恒飘浇脐磨班全蒜