●试题六 阅读以下说明和C++程序,将应填入(n)处的语句写在答题纸的对应栏内。 【说明】 以下程序
●试题六
阅读以下说明和C++程序,将应填入(n)处的语句写在答题纸的对应栏内。
【说明】
以下程序的功能是计算三角形、矩形和正方形的面积并输出。
程序由4个类组成:类Triangle、Rectangle和Square分别表示三角形、矩形和正方形;抽象类Figure提供了一个纯虚拟函数getArea(),作为计算上述3种图形面积的通用接口
【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 Ib;
double lc;
public:
Triangle(double la,double lb,double lc){
This->la=la;this->lb=lb;this->lc=lc;
}
double getArea(){
double s=(la+lb+±c)/2.0;
return sqrt(s*(s-1a)*(s-1b)*(s-1c));
}
};
void 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[i])->getArea()<<endl;
}
}
参考答案: