内存:128  时间:1

题目描述

小明的弟弟加入的C++兴趣小组,组长布置的第一个任务就是将已有的C程序改写成C++程序。他分配的第一个题目是,给出圆柱体的底面半径r和高h,求圆柱体的底面积、侧面积、表面积和体积(小数点后保留2位)。请辅助小明的弟弟用C++类来实现。

C代码:
#include <stdio.h>
#define PI 3.1415926
int main()
{
    int r,h;
    double area,V,basal_area,lateral_area;
    double C;
    scanf("%d %d",&r,&h);
    basal_area=PI*r*r;
    C=2*PI*r;
    lateral_area=C*h;
    area=basal_area*2+lateral_area;
    V=basal_area*h;
    printf("basal_area:%.2lf
",basal_area);
    printf("lateral_area:%.2lf
",lateral_area);
    printf("area:%.2lf
",area);
    printf("V:%.2lf
",V);
    return 0;
}
C++代码:
#include <iostream>
#include <iomanip>
using namespace std;
#define PI 3.1415926
/******************/
只需将此部分代码补充完整并提交

class Cylinder
{
public:
    double area,V,basal_area,lateral_area;
    void calculate(……)
    {
    }
    void display()
    {
    }
};
/*******************/
int main()
{
    Cylinder c;
    int r,h;
    cin>>r>>h;
    c.calculate(r,h);
    c.display();
    return 0;
}

输入

输入为两个正整数,分别为底面半径r和高h.

输出

输出格式见以下示例

样例输入

1 2

样例输出

basal_area:3.14
lateral_area:12.57
area:18.85
V:6.28

提示

代码如下


#include <iostream>
#include <iomanip>
using namespace std;
#define PI 3.1415926
class Cylinder
{
public:
    double area,V,basal_area,lateral_area;
    void calculate(int r,int h)
    {
        double C;
        basal_area=PI*r*r;
        C=2*PI*r;
        lateral_area=C*h;
        area=basal_area*2+lateral_area;
        V=basal_area*h;
    }
    void display()
    {
        cout<<setiosflags(ios::fixed)<<setprecision(2);
        cout<<"basal_area:"<<basal_area<<endl;
        cout<<"lateral_area:"<<lateral_area<<endl;
        cout<<"area:"<<area<<endl;
        cout<<"V:"<<V<<endl;
    }
};

int main()
{
    Cylinder c;
    int r,h;
    cin>>r>>h;
    c.calculate(r,h);
    c.display();
    return 0;
}

代码来源于互联网,仅供参考!