问题及代码:
Problem K: C++ 长方体继承自矩形
Time Limit: 1 Sec Memory Limit: 128 MBSubmit: 617 Solved: 481
[ Submit][ Status][ Web Board]
Description
如下的代码中,定义了Rectangle矩形类,在此基础上定义Bulk立方体派生类,请在(1)-(6)处填上需要的代码,使程序输出指定长、宽、高的立方体的体积。
#include <iostream>
using namespace std;
class Rectangle //矩形类
{
private:
int length; //矩形的长和宽
int width;
public:
Rectangle();
Rectangle(int l,int w); //构造函数,l、w分别代表长和宽
int getArea(); //求面积
};
class Bulk: public Rectangle //立方体类
{
public:
Bulk(); //默认构造函数
Bulk(int l, int w,int h); //带参数的构造函数
int getVolume();
private:
int height; //高,长、宽继承自基类
};
//只提交begin到end部分的代码
//*********** begin *************
//Rectangle类的成员函数
Rectangle::Rectangle():______(1)______ {}
Rectangle::Rectangle(int l,int w):______(2)______ {}
int Rectangle::getArea()
{
return ______(3)______;
}
//Bulk类的成员函数
Bulk::Bulk():______(4)______
Bulk::Bulk(int l, int w,int h):______(5)______
int Bulk::getVolume()
{
______(6)______
};
//*********** end ***************
int main()
{
int x,y,z;
cin>>x>>y>>z;
Bulk b(x,y,z);
cout<<b.getVolume()<<endl;
return 0;
}
Input
长方体的长、宽、高
Output
长文体的体积
Sample Input
3 4 5
Sample Output
60
HINT
#include <iostream>
using namespace std;
class Rectangle //矩形类
{
private:
int length; //矩形的长和宽
int width;
public:
Rectangle();
Rectangle(int l,int w); //构造函数,l、w分别代表长和宽
int getArea(); //求面积
};
class Bulk: public Rectangle //立方体类
{
public:
Bulk(); //默认构造函数
Bulk(int l, int w,int h); //带参数的构造函数
int getVolume();
private:
int height; //高,长、宽继承自基类
};
//只提交begin到end部分的代码
//*********** begin *************
//Rectangle类的成员函数
Rectangle::Rectangle():length(0),width(0) {}
Rectangle::Rectangle(int l,int w):length(l),width(w) {}
int Rectangle::getArea()
{
return length*width;
}
//Bulk类的成员函数
Bulk::Bulk():height(0) {}
Bulk::Bulk(int l, int w,int h):Rectangle(l,w),height(h) {}
int Bulk::getVolume()
{
return getArea()*height;
};
//*********** end ***************
int main()
{
int x,y,z;
cin>>x>>y>>z;
Bulk b(x,y,z);
cout<<b.getVolume()<<endl;
return 0;
}
运行结果: