【简答题】
试题六(15分,每空3分)
阅读以下说明和C++程序,将应填入 __(n)__处的字句写在答题纸的对应栏内
【说明】
以下程序的功能是计算三角形、矩形和正方形的面积并输出。
程序由4个类组成:类Triangle,Rectangle和Square分别表示三角形、矩形和正方形;抽象类Finure提供了一个纯虚拟函数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->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;
}
}
};