第3章 类与对象习题 参考答案

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

第3章类与对象习题参考答案

一、选择题(共30分,每题1分)

二、填空题(共18分,每题1分)

1. 不能

2. 将对象A复制给对象B

3. (1) public (2) 成员函数

4. 实例

5. 复制(拷贝)

6. 类(test )~test()

7. 对象类

8. 重载返回值参数

9.默认(无参)

10. ->

11. 构造函数

12.函数返回类型类名::成员函数名(参数表);

13. 常对象

14. 对象名

15. 析构函数

三、改错题(共12分,每题2分)

1. void Point(int a)------------Point(int a)

cout<

2. 答案:int i, int j-----------int i, int j=0 //注:只要有一个int类型的数据就行。

分析:调用时,既有一个参数,也有两个参数,且没有重载,所以参数需要带默认值。

3. 答案:swap(&a,&b); ------------swap(a, b);

分析函数的形参是变量的引用,调用时的实参应该是地址。

4. #include

class one

{ int a1,a2;

public:

one(int x1=0, int x2=0) //修改1:构造函数的函数体没有

{a1=x1;a2=x2;}

show() //修改2 定义成员函数

{cout<

cout<

}

};

void main()

{ one data(2,3);

data.show(); //修改3:用对象调用成员函数

}

5. ABC(int aa)a(aa){} ------------ABC(int aa):a(aa){}

分析:构造函数的初始化列表格式错误。

6. 答案:cout<

分析:采用默认的访问权限即私有的,在外部无法访问。

四、看程序写结果(共15分,每题3分)

1.

输出:

Constructing normally

Constructing with a number:59

Display a number:0

Display a number:59

Destructing

Destructing

2.s=150

3.62

[解析]x是普通对象,调用普通的print函数;而y常对象,调用常成员函数。

4.答案:108

[解析]p指向对象x2,x2.getA()+5该值为8 即x2.a=8;10+x1.getA()为10,x1.a=10。

5. 38

五、编程题(共25分)

1.某商店经销一种货物,货物成箱购进,成箱卖出,购进和卖出时以重量为单位,各箱的重量不一样,因此,商店需要记下目前库存货物的总量,要求把商店货物购进和卖出的情况模拟出来。

#include

using namespace std;

class Goods

{

double weight;

static double totalweight;

public:

Goods(double w)

{

weight=w;

totalweight+=weight;

}

~Goods(){

totalweight-=weight;

}

static double getTotalWeight(){

return totalweight;

}

};

double Goods::totalweight=0;

void main()

{

Goods *g1,*g2;

g1=new Goods(10.0); //买进货物,增加总重量

g2=new Goods(20.0);

cout<<"总重量"<

delete g1;

cout<<"卖掉一个以后的总重量"<

delete g2;

cout<<"再卖掉一个后的总重量"<

}

2.声明一个长方形Box,该类有长(length)、宽(width)、高(height)三个数据成员,类中有获取及修改、宽、高的函数,以及计算长方形表面积和体积的函数,声明默认的构造函数和带有3个参数的构造函数。在main函数中进行测试。

#include //包含头文件命令

using namespace std;//使用名字空间std

class Box

{public:

Box(){ length=1; width=1; height=1; } //默认构造函数

Box(int length, int width, int height): length(length), width(width), height(height){}

相关文档
最新文档