问题 问答题

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

答案

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

问答题 简答题
判断题