/*
*Copyright (c) 2016,烟台大学计算机学院
*All rights reserved.
*文件名称 :
*作 者 : 胡昌星
*完成日期 : 2016年5月26号
*版 本 号 : v1.0
*
*问题描述 : 数组做数据成员
*输入描述 : 无
*程序输出 :
*/
#include <iostream>
using namespace std;
class point
{
public:
point(double i,double j);
void setpoint(double a,double b);
void show();
protected:
double x;
double y;
};
point::point(double i,double j)
{
x=i;
y=j;
}
void point::setpoint(double a,double b)
{
x=a;
y=b;
}
void point::show()
{
cout<<"("<<x<<","<<y<<")"<<endl;
}
class circle:public point
{
public:
circle(double i,double j,double k);
void setradius(double s);
double area();
void show();
protected:
double r;
} ;
circle::circle(double i,double j,double k):point(i,j),r(k){}
void circle::setradius(double s)
{
r=s;
}
double circle::area()
{
return 3.14*r*r;
}
void circle::show()
{
cout<<"x:"<<x<<"y:"<<y<<"r:"<<r<<"area:"<<area()<<endl;
}
class cylinder:public circle
{
public:
cylinder(double i,double j,double k,double b);
void setheight(double f);
double area();
double volume();
void show();
protected:
double h;
};
cylinder::cylinder(double i,double j,double k,double b):circle(i,j,k),h(b){}
void cylinder::setheight(double f)
{
h=f;
}
double cylinder::area()
{
return 2*3.14*r*r+2*3.14*r*h;
}
double cylinder::volume()
{
return 3.14*r*r*h;
}
void cylinder::show()
{
cout<<"volume:"<<volume()<<"area:"<<area()<<endl;
}
int main( )
{
cylinder cy1(3.5,6.4,5.2,10);
cout<<"\noriginal cylinder:\nx=";
cy1.show();
cy1.setheight(15);
cy1.setradius(7.5);
cy1.setpoint(5,5);
cout<<"\nnew cylinder:\n";
cy1.show();
return 0;
}
第十一周项目1(3)
最新推荐文章于 2024-06-24 23:55:59 发布