●试题六
阅读下列程序说明和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<c2
源程序文件test7_3.cpp清单如下:
#include<iostream.h>
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"<<endl;
else
if ((c1->GetRadius())==(c2->GetRadius()))
cout<<"c1=c2"<<endl;
else
if ((c1->GetRadius())<(c2->GetRadius()))
cout<<"c1<c2"<<endl;
}
void main()
{
Circle c1;
c1.SetRadius (5) ;
c1.Print();
Circle c2 (10) ;
c2.Print();
CompareR(&c1,&c2);
}
第1题:
试题三(共 15 分)
阅读以下说明和 C 程序,将应填入 (n) 处的字句写在答题纸的对应栏内。
第2题:
第3题:
第4题:
第5题:
第6题: