有以下程序: #include <iostream> using namespace std; #define PI 3.14 class Point { private: int x,y; public: Point(int a,int b) {x=a;y=b; } int getx() {return x; }int gety() {return y; } }; class Circle: public Point {private:int r;public: Circle(int a, int b,int c):Point(a,b) {r=c; }int getr() {return r; } double area() {return PI*r*r; } }, int main() { Circle c1(5,7,10); cout<<c1 .area()<<endl; return0; } 程序执行后的输出结果是
A.314
B.157
C.78.5
D.153.86
参考答案:A
解析: 本题考核派生类的定义和应用。本程序设计了一个点类Point,包含了横、纵两个坐标数据x和y,由它派生出了圆类Circle,并加入了新的数据成员,即一个半径r和一个求圆面积的函数成员area。 在主函数main中,首先定义了一个圆Circle类的对象c1,并通过它的构造函数初始化其数据成员。由此可知,其半径r的值为10,所以其面积为PI*10’10=314,即对象c1的函数成员area的返回值为314。