问答题
阅读以下说明和C++程序,将应填入(n)处的字句写在对应栏内。
【说明】
以下程序的功能是计算三角形、矩形和正方形的周长并输出。
程序由4个类组成:类Triangle、Rectangle和Square分别表示三角形、矩形和正方形;抽象类 Figure提供了一个纯虚拟函数getGirth(),作为计算上述3种图形周长的通用接口。
【C++程序】
# include < iostream. h >
# include < math. h >
class Figure {
public:
virtual double getGirth() =0; //纯虚拟函数 };
class Rectangle: {{U}}(1) {{/U}}{
protected:
double height;
double width;
public:
Rectangle(){};
Rectangle( double height, double width) {
this→height = height;
this→width = width;
}
double getGirth ( ) {
return {{U}}(2) {{/U}};
}
};
class Square: {{U}}(3) {{/U}} {
public:
Square( double width) {
{{U}} (4) {{/U}};
} };
class Triangle: {{U}}(5) {{/U}}{
double la;
double lb;
double lc;
public:
Triangle( double la,double lb,double lc){
this→la = la; this→Lb = lb; this→lc = lc;
}
double getGirth ( ) {
}
return la + lb + lc;
}
};
void main( ) {
Figure * figures[ 3 ] = {
new Triangle ( 2,3,3 ),new Rectangle (5,8) , new Square {{U}}(5) {{/U}}};
for (inti =0;i<3;i++){
cout < < "figures [" < < i < <" ] girth =" < < ( figures [ i ] ) →getGirth ( ) < < end1;
}
}
问答题
【正确答案】
【答案解析】
问答题
【正确答案】
【答案解析】(height+ width)*2 [解析] 方法getGirth()返回矩形的周长,即(height+ width)*2。
问答题
【正确答案】
【答案解析】Public Rectangle [解析] 矩形类Rectangle 是正方形类Square 的父类,这里当填入public Rectangle。
问答题
【正确答案】
【答案解析】height=this→width=width [解析] 这是正方形类Square的构造函数,它的“长”和“宽”都是width,所以应填入height=this→width=width。其中第二个width是传入的参数。
问答题
【正确答案】
【答案解析】public Figure [解析] 类Figure是类Triangle的父类,这里当填入public Figure。