2015 C++ 上机考 第一次 B

  • 格式:rtf
  • 大小:52.14 KB
  • 文档页数:2

《面向对象程序设计》阶段性测试一(B)
1. 完成一个复数类和一个函数sub,使主函中的代码可以运行并得到如下的结果:
c1 is: 2+3i
c2 is: 3+4i
c4 is: -1-1i
主函数
int main(){
complex c0(2,3);
complex c1(c0);
cout<<"c1 is: "; c1.display();
complex c2(3,4);
cout<<"c2 is: "; c2.display();
complex c3,c4;
c4 = sub(c1,c2);
cout<<"c4 is: "; c4.display();
}
具体要求:
●复数说明
●复数是含有实部和虚部的数,如2+3i,其中,2是实部,3是虚部
●复数相减结果为复数,结果的实部为两个复数的实部相减,虚部为两个复数的虚部相减●复数类类名complex
●数据成员,实部和虚部都用int类型表示,私有
●具有的公有的构造函数和复制构造函数函数
●具有显示复数内容的公有成员函数display
●sub为complex类的友元函数,实现两个复数相减,形式参数为两个复数类的常引用
2. 完成一个表示点的类point和一个表示矩形的类rectangle,使得主函数可以运行并得到如下的结果。

the area of rectangle1 is: 12
the count of rectangle is: 2
#include <cmath>
#include <iostream>
using namespace std;
int main(){
point p1(1,1);
point p2(4,5);
rectangle rec1(p1,p2);
cout<<"the area of rectangle1 is: "<<rec1.getArea()<<endl;
point p3(2,2);
rectangle rec2(p1,p3);
cout<<"the count of rectangle is: "<<rectangle::count<<endl;
}
具体要求:
●点类名point
●点类point含有x,y两个数据成员。

●矩形类名rectangle
●矩形类rectangle有且仅有两个点的对象作为数据成员(一个矩形可以被看作由两个点组成:
一个是左上角点,一个是右下角点)
●rectangle的构造函数中用初始化列表对内嵌对象进行初始化
●rectangle类有公有的成员函数getArea,用于计算返回矩形的面积
●rectangle类有公有的类属性成员count用于记录创建的rectangle类对象的数量。