站点图标 陌路寒暄

圆柱体的C++

圆柱体的C++

时间: 1ms        内存:128M

描述:

小明的弟弟加入的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\n",basal_area);
    printf("lateral_area:%.2lf\n",lateral_area);
    printf("area:%.2lf\n",area);
    printf("V:%.2lf\n",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

提示:

参考答案(内存最优[920]):

#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\n",basal_area);
    printf("lateral_area:%.2lf\n",lateral_area);
    printf("area:%.2lf\n",area);
    printf("V:%.2lf\n",V);
    return 0;
}

参考答案(时间最优[0]):


#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;
}

题目和答案均来自于互联网,仅供参考,如有问题请联系管理员修改或删除。

退出移动版