问题 单项选择题

有以下程序:
#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。

单项选择题
名词解释