若是凉夜已成梦

青春里 总有些事情要努力去做 总有些梦想要拼命去追。


  • 运维

  • 前端

  • 编程

  • 随笔

  • hust-oj

2948: 编程:圆桌子和方桌子

发表于 2017-10-06   |   分类于 HUSTOJ   |   阅读次数 1,642

题目描述

圆桌子(RoundTable)和方桌子(SquareTable),都是桌子(Table)。每种桌子都可以计算其面积。在下面的程序中,通过阅读main函数,可以发现需要将Table类声明为抽象类。在下面框架的引导下,请写出完整的程序,并提交main函数以外的所有代码。
//*****************begin***************
#include <iostream>
#include <iomanip>
using namespace std;
const double PI = 3.1415926;
class Table
{
public:

};

//声明圆桌子类
class RoundTable :public Table
{
public:

protected:
    double radius;  //半径
};

//声明方桌子类
class SquareTable:public Table
{
public:

protected:
    double length;  //边长
};

//*****************end***************
int main( )
{
    double r, l;
    cin>>r>>l;   //输入圆桌子半径和方桌子边长
    RoundTable a(r);     //创建圆桌子对象
    SquareTable b(l);     //创建方桌子对象
    Table *t;            //定义指向抽象类的指针t
    t = &a;             //t指向了圆桌子对象
    cout<<setiosflags(ios::fixed)<<setprecision(2);
    cout<<"area of round table: "<<t->area()<<endl; //t->area()返回圆桌子面积
    t = &b;               //t指向了方桌子对象
    cout<<"area of square table: "<<t->area()<<endl; //t->area()返回方桌子面积
    return 0;
}

输入

输入一个圆桌子半径,和一个方桌子的边长

输出

圆桌子和方桌子的面积

样例输入

2.13 3.2

样例输出

area of round table: 14.25
area of square table: 10.24

参考代码

#include<stdio.h>
const double PI = 3.1415926;
int main() 
{
    float a,b;
    scanf("%f%f",&a,&b);
    printf("area of round table: %.2fnarea of square table: %.2fn",PI*a*a,b*b);
    return 0;
}

解析

暂无

hustoj

发表评论 取消回复

要发表评论,您必须先登录。


hoxis wechat
著作权归作者所有
站点更新说明
  • 文章目录
  • 站点概览
若是凉夜已成梦

若是凉夜已成梦

青春里 总有些事情要努力去做 总有些梦想要拼命去追。

1904 日志
6 分类
12 标签
RSS
weibo github twitter facebook

友情链接

Skip Dreams孤独患者 原站点
© 2017 若是凉夜已成梦
Powered by WordPress | 已运行
Theme By NexT.Mist