• YTU 2621: B 继承 圆到圆柱体


    2621: B 继承 圆到圆柱体

    时间限制: 1 Sec  内存限制: 128 MB
    提交: 313  解决: 240

    题目描述

    定义了Circle圆形类,在此基础上派生出Cylinder圆柱体类。

    Circle圆形类定义如下:

    class Circle
    {
    public:
    Circle(double r):radius(r){ }
    double area(){return PI*radius*radius;} //圆面积
    protected:
    double radius; //圆半径 
    };

    请在下面的程序段基础上完成整个设计。
    在主程序中输出指定半径的圆的面积(area),输出指定圆底半径和高的圆柱体表面积(area)和体积(volume)。

    #include <iostream>
    #include <iomanip>
    using namespace std;

    #define PI 3.14

    class Circle
    {
    public:
    Circle(double r):radius(r){ }
    double area(){return PI*radius*radius;} //圆面积
    protected:
    double radius; //圆半径 
    };

    //将程序需要的其他成份写在下面,只提交begin到end部分的代码
    //******************** begin ********************


    //********************* end ********************

    int main()
    {
    double r,h;

    cout<<setiosflags(ios::fixed);
    cout<<setprecision(2);

    cin>>r;
    Circle c(r);
    cout<<c.area()<<endl;

    cin>>r>>h;
    Cylinder cy(r,h);
    cout<<cy.area()<<" "<<cy.volume()<<endl;

    return 0; 
    }

    输入

    圆的半径

    圆柱体圆底半径 和 圆柱体的高

    输出

     圆的面积

    圆柱体的表面积 和  体积

    样例输入

    1
    2 2.5

    样例输出

    3.14
    56.52 31.40

    提示

     只提交begin到end部分的代码

    迷失在幽谷中的鸟儿,独自飞翔在这偌大的天地间,却不知自己该飞往何方……

    #include <iostream>
    #include <iomanip>
    using namespace std;
    #define PI 3.14
    class Circle
    {
    public:
        Circle(double r):radius(r) {  }
        double area()
        {
            return PI*radius*radius;   //圆面积
        }
    protected:
        double radius;  //圆半径
    };
    class Cylinder
    {
    public:
        Cylinder(double r,double h):r(r),h(h) {}
        double area();
        double volume();
        double r,h;
    };
    double Cylinder::area()
    {
        return PI*r*r*2+PI*2*r*h;
    }
    double Cylinder::volume()
    {
        return PI*r*r*h;
    }
    int  main()
    {
        double r,h;
        cout<<setiosflags(ios::fixed);
        cout<<setprecision(2);
        cin>>r;
        Circle c(r);
        cout<<c.area()<<endl;
        cin>>r>>h;
        Cylinder cy(r,h);
        cout<<cy.area()<<" "<<cy.volume()<<endl;
        return 0;
    }
    

  • 相关阅读:
    Vue与Django数据交互
    Vue部分使用注意事项
    Node.js及npm详细安装教程
    vue组件实现简单的路由
    实现一个简单的marked编辑格式转换器部分功能
    Vue的父子组件数据传递
    Vue数据绑定
    [蓝桥杯][2013年第四届真题]错误票据
    历届试题 连号区间数
    [蓝桥杯][历届试题]蚂蚁感冒
  • 原文地址:https://www.cnblogs.com/im0qianqian/p/5989520.html
Copyright © 2020-2023  润新知