发布时间 : 星期五 文章面向对象程序设计(C++)复习题更新完毕开始阅读c03e8d7eb90d6c85ec3ac67a
int bedrooms; int bathrooms; };
class Office:public Building {
public:
Office(int f,int r,double ft,int ph,int ex):Building(f,r,ft) { phones=ph;
extinguishers=ex; }
void show()
{cout<<\ Building::show();
cout<<\
cout<<\ } private:
int phones;
int extinguishers; };
void main()
{ Housing hob(5,7,140,2,2); Office oob(8,12,500,12,2); hob.show(); oob.show(); }
16. 有一正方体形环,其中小正方形连长为5,大正方形连长为10。编程定义一个square类,求正方体形
环面积。
#include
square(float r1=0) {r=r1;} float area() { s=3r*r; return s; }
friend double subarea(square &s1,square &s2) {return s1.area()-s2.area();} };
void main()
{square obj1(10); square obj2(5);
cout< 17. 定义应用抽象类(base),求圆(circle)和圆外切正方形(outcircle)的面积和周长。 程序: #include virtual void display( )= 0; //纯虚函数成员 }; class circle:public base //公有派生 { protected: double r,s,p; public: circle(double x=0) { r=x;} void display( ) { cout<<\圆的面积 \ cout<<\圆的周长 \虚成员函数 }}; class outcircle:public circle //公有派生 { public: outcircle(double x=0): circle(x) {} void display( ) { cout<<\外切正方形面积\ cout<<\外切正方形周长\虚成员函数 }}; void fun(base *ptr) //普通函数 { ptr ->display( ); } void main( ) //主函数 { base *p; //声明抽象基类指针 circle b1(10); //声明派生类对象 outcircle e1(10); p=&b1; fun(p); p=&e1; fun(p); } 18. 利用一个二进制文件保存10个100以内的整数(数据用键盘输入)。 程序: #include { ofstream file1 ; // 定义输出文件流file1。 file1.open ( \ if ( ! file1 ) { cerr << \ exit (-1) ; } int n,k; file1.write((char *) &k,sizeof(int)); for (k=1 ; k<=10 ; k++ ) { cin>>n; file1.write((char *) &n,sizeof(int)); } file1.close ( ) ; }