●试题六
阅读下列程序说明和C++代码,将应填入(n)处的字句写在答卷的对应栏内。
【说明】
①为类Circle增加一个构造函数,该函数有一个参数,并在构造时将该参数值赋给成员radius。将该函数实现为一个非内联函数,并且使用参数列表的方式将类成员赋值。
②为类Circle增加一个成员函数print(),使得可以输出有关圆的信息,比如下列程序
Circle c;
C.SetRadius (5) ;
C.Print();
将输出:The circle has radius of 5!
③完成友元函数void CompareR(Circle *c1,Circle *c2)的定义,在屏幕中输出c1与c2比较radius大小结果,要求使用if-else结构完成。
输出结果如下:
The circle has radus of 5!
The circle has radius of 10!
c1 源程序文件test7_3.cpp清单如下: #include class Circle{ public: Circle():radius (5) {} (1) void SetRadius(int r) { radius=r; } int GetRadius() { return radius; } (2) friend void CompareR(Circle *c1,Circle *c2); private: int radius; }; void CompareR(Circle *c1,Circle *c2) { (3) cout<<"c1>c2"< else if ((c1->GetRadius())==(c2->GetRadius())) cout<<"c1=c2"< else if ((c1->GetRadius())<(c2->GetRadius())) cout<<"c1 } void main() { Circle c1; c1.SetRadius (5) ; c1.Print(); Circle c2 (10) ; c2.Print(); CompareR(&c1,&c2); }