• 2021-04-14
    声明一个shape基类,有计算面积arae()成员函数,由此派生出正方形类(Square)、直角三角形类(Triangle)、圆类(Circle),它们都有arae()成员函数。利用虚函数编程计算正方形、直角三角形和圆的面积之和
  • 参考程序如下:
    #include #include
    using namespace std;const double PI = 3.1415926;
    class Shape{
    public:virtual void area( ) =0;
    };//圆
    class circle:public Shape{
    double r;public:
    circle(double i):r(i){}void area( )
    { cout << "圆的面积:" << r*r*PI << endl; }};
    class Retangle:public Shape{
    double a, b, s;public:
    Retangle(double x=0,double y=0){
    a=x;b=y;
    }void area( )
    {s = a*b;
    cout << "长方形面积:" << s << endl;}
    };class Triangle:public Shape
    {double a, b, s;
    public:Triangle(double i, double j):a(i), b(j){}
    void area( ){
    s = (a*b)/2;cout << "三角形面积:" << s << endl;
    }};
    int main( ){
    double r, a, b, c, d;cin >> r >> a >> b >> c >> d;
    Shape *p;circle c1(r);
    p = &c1;p -> area();
    Retangle c2(a, b);p = &c2;
    p -> area();Triangle c3(c, d);
    p = &c3;p -> area();
    return 0;}

    内容

    • 0

      定义一个Shape基类,在此基础上派生出Rectangle和Circle类,二者都有GetArea()函数计算对象的面积。通过屏幕提示请用户选择输入矩形长、宽,或者圆的半径,程序算出面积后输出到屏幕。 A: 正确 B: 错误

    • 1

      使用虚函数编写程序求球体和圆柱的体积及表面积。由于球体和圆柱体都可以看作由圆继承而来,所以可以定义圆类 circle 作为基类。在circle 类中定义一个数据成员 radius 和两个虚函数 area() 和 volume (). 由 circle 类派生 sphere类和 column 类。在派生类对虚函数area()和volume () 重新定义,分别求球体和圆柱体的体积及表面积。

    • 2

      如果把正方行形与三角形一个隔一个地排成一行,正方形有20个,三角最少有几个

    • 3

      幼儿对不同几何图形辨别的难度由易到难是? 三角形一圆形一正方形|圆形一三角形一正方形|正方形—圆形—三角形|圆形一正方形一三角形

    • 4

      定义一个shape抽象类,派生出Rectangle类和Circle类,计算各派生类对象的面积Area().