阅读下列C++程序和程序说明,将应填入(n)处的字句写在对应栏内。 【说明】 以下C++程序的功能是计算三角形、矩形和正方形的面积并输出。程序由4个类组成:类Triangle、Rectangle和Square分别表示三角形、矩形和正方形;抽象

admin2009-02-15  17

问题 阅读下列C++程序和程序说明,将应填入(n)处的字句写在对应栏内。
    【说明】
   以下C++程序的功能是计算三角形、矩形和正方形的面积并输出。程序由4个类组成:类Triangle、Rectangle和Square分别表示三角形、矩形和正方形;抽象类Figure提供了一个纯虚拟函数getArea(),作为计算上述3种图形面积的通用接口。
   #include<iostream.b>
   #include<math.h>
   class Figure{
   public:
         virtual double getArea0=0; //纯虚拟函数
   };
   class Rectangle: (1)  {
   protected:
         double height;
         double width;
   public:
         Rectangle(){};
         Rectangle(double height, double width){
              This->height=height;
              This->width=width;
   }
   double getarea(){
         return  (2);
   }
   };
   class Square: (3)  {
   public:
         Square(double width){
           (4);
         }
   };
   class Triangle:  (5)  {
         double la;
         double lb;
         double lc;
   public:
         Triangle(double la, double lb, double lc){
              this->la=la;  this->lb;  this->lc;
              }
              double getArea(){
                double s=(la+lb+lc)/2.0;
                return sqrt(s*(s-la)**(s-lb)*(s-lc));
              }
   };
   viod main(){
     Figure* figures[3]={
         new Triangle(2,3,3), new Rectangle(5,8), new Square(5));
     for(int i=0;i<3;i++){
         cout<<"figures["<<i<<"]area="<<(figures)->getarea()<<endl;
         }
   }

选项

答案(1)public Figure (2)height*width或width*height或this->height*this->width或this->width*this->height (3)public Rectangle (4)this->height=this->width=width或height=this->width=width (5)public Figure

解析 (1)public Figure
   本处由于Rectangle是派生类,需要公有继承Figure。
(2)height*width或width*height或this->height*this->width或this->width*this->height
   本处是计算矩形的面积。
(3)public Rectangle
   本处由于Square是派生类,需要公有继承Rectangle。
(4)this->height=this->width=width或height=this->width=width
   本处是正方形的构造函数,是给继承的Rectangle赋初值,由于正方形长等于宽,因此应该填入:this->height=this->width=width或height=this->width=width。
(5)public Figure
   本处由于Triangle是派生类,需要公有继承Figure,因此应该填入:public Figure。
转载请注明原文地址:https://jikaoti.com/ti/nPi7FFFM
0

相关试题推荐
最新回复(0)