C++先建立一个Point(点)类,包含保护数据成员x,y(坐标).以Point类为基类,派生出一个Circle(圆)类,
(圆)类,增加保护数据成员r(半径),公有成员函数area,用于计算圆的面积.再以Circle类为直接基类,派生出一个Cylinder(圆柱体)类,再增加私有数据成员h(...
(圆)类,增加保护数据成员r(半径),公有成员函数area,用于计算圆的面积.再以Circle类为直接基类,派生出一个Cylinder(圆柱体)类,再增加私有数据成员h(高),公有成员函数area和volume,分别用于计算圆柱的表面积和圆柱的体积.在main函数中创建Circle类的对象cir,并输出圆的面积;再创建Cylinder类的对象cy,并输出圆柱的表面积和圆柱的体积.
展开
2个回答
展开全部
#include <iostream>
using namespace std;
class Point
{
public:
Point(int xx = 0,int yy = 0)
{
x = xx;
y = yy;
}
~Point(void)
{
}
protected:
int x,y;
};
class Circle:public Point
{
public:
Circle(int xx = 0,int yy = 0,int rr = 0)
{
Point(xx,yy);
r = rr;
}
~Circle(void)
{
}
void area(void)
{
double ar = 3.14*r*r;
cout<<ar<<endl;
}
protected:
int r;
};
class Cylinder:public Circle
{
public:
Cylinder(int xx = 0,int yy = 0,int rr = 0,int hh = 0)
{
Point(xx,yy);
Circle(xx,yy,rr);
h = hh;
}
~Cylinder(void)
{
}
void area(void)//表面积
{
double ar = 3.14*r*r*h/3;//具体的公式忘记了
cout<<ar<<endl;
}
void volume(void)//体积
{
double ar = ****;//体积公式忘记了,自己补充
cout<<ar<<endl;
}
private:
int h;
};
int main(void)
{
Circle cir(1,2,3);
cir.area();
Cylinder cy(1,2,3,4);
cy.area();
cy.volume();
system("pause");
return 0;
}
using namespace std;
class Point
{
public:
Point(int xx = 0,int yy = 0)
{
x = xx;
y = yy;
}
~Point(void)
{
}
protected:
int x,y;
};
class Circle:public Point
{
public:
Circle(int xx = 0,int yy = 0,int rr = 0)
{
Point(xx,yy);
r = rr;
}
~Circle(void)
{
}
void area(void)
{
double ar = 3.14*r*r;
cout<<ar<<endl;
}
protected:
int r;
};
class Cylinder:public Circle
{
public:
Cylinder(int xx = 0,int yy = 0,int rr = 0,int hh = 0)
{
Point(xx,yy);
Circle(xx,yy,rr);
h = hh;
}
~Cylinder(void)
{
}
void area(void)//表面积
{
double ar = 3.14*r*r*h/3;//具体的公式忘记了
cout<<ar<<endl;
}
void volume(void)//体积
{
double ar = ****;//体积公式忘记了,自己补充
cout<<ar<<endl;
}
private:
int h;
};
int main(void)
{
Circle cir(1,2,3);
cir.area();
Cylinder cy(1,2,3,4);
cy.area();
cy.volume();
system("pause");
return 0;
}
更多追问追答
追问
灰常感谢大神
灰常感谢大神
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询
广告 您可能关注的内容 |