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

admin2010-12-16  29

问题 阅读以下说明和C++程序,将应填入(n)处的字句写在对应栏内
   [说明]
   以下程序的功能是计算三角形、矩形和正方形的面积并输出。
   程序由4个类组成:类Triangle,Rectangle和Square分别表示三角形、矩形和正方形;抽象类Figure提供了一个纯虚拟函数getArea(),作为计算上述三种图形面积的通用接口。
   [C++程序]
   #include<iostream.h>
   #include<math.h>
   class Figure{
   public:
   virtual double getArea()=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->ib;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 (3) public Rectangle (4) this->height=this->width=width (5) public Figure

解析 本题考查C++编程中的几个重要概念。
   Figure类是一个抽象类,其他三个类rectangle、square、triangle都要直接或间接继承该类,所以(1)(5)处应为“public Figure”。(2)处是要计算矩形面积,矩形面积等于长乘以宽,所以(2)处应为“height* ]width”。正方形是一个特殊的矩形,所以可以继承矩形类,所以(3)处应为“publicRectangle”,(4)处应为“this->height=this->width=width”。
转载请注明原文地址:https://kaotiyun.com/show/KBjZ777K
0

最新回复(0)