第十一周项目1(3)

/*
*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;
}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值