ImageVerifierCode 换一换
格式:DOCX , 页数:19 ,大小:53.14KB ,
资源ID:23926703      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/23926703.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(北邮信通C++上机实验七 第八章.docx)为本站会员(b****7)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

北邮信通C++上机实验七 第八章.docx

1、北邮信通C+上机实验七 第八章8.3 实验题一、基础题1 要求:(1)上机调试以下有语法错误的程序,输出结果如图8-1,对有注释标记的语句进行注释。(2)添加适当的语句,上机验证构造函数和析构函数执行的次序和次数。#include using namespace std;class base int a,b; public: base (int i,int j) a=i; b=j; void move(int x,int y) a+=x; b+=y ; void show() couta=a,b=bendlendl; ;class derived1:public base int x,y; p

2、ublic: derived1 (int i,int j,int k, int l): base (i,j) x=k; y=l; void show() coutx=x,y=yendlendl; void fun() move(3,5); void f1() base:show(); ; void main() base e(1,2); e.show(); derived1 d(3,4,5,6); d.fun(); d. base:show(); d. derived1:show(); d.f1(); 运行结果:图8-1 第1题的输出2上机调试下列有语法错误的程序,然后使其输出如图8-2的结果

3、。#include using namespace std; class base public: void disp() coutbase classendl; ; class derived1:public base public: void disp () coutderived1 classendl; ; class derived2:public base public: void disp () coutderived2 classendl; ; void main() base obj1, *p; derived1 obj2; derived2 obj3; coutendl; o

4、bj1. disp (); obj2. disp (); obj3. disp (); coutdisp (); p=&obj2; p-disp (); p=&obj3; p-disp (); 其运行结果:图8-2 第2题的输出3阅读以下程序,写出程序的运行结果#include using namespace std; class base int a; public: void seta(int x) a=x; void showa() cout a endl; ; class derived1 int b; public: void setb(int x) b=x; void showb(

5、) cout b endl; ; class derived3:public base,public derived1 int c; public: void setc(int x,int y,int z) c=z; seta(x); setb(y); void showc() cout c endl; ; void main() derived3 A; A.seta(10); A.showa(); A.setc(11,22,33);A.showc(); 运行结果: 10 33 4. 上机调试并修改程序中的语法错误,并分析运行结果#include using namespace std ; c

6、lass person / char *name; int age; char add; public: person()coutperson class constructorendl; person()coutperson class destructorendl; ; class student:public person / char *department; / int level; / public: student()coutstudent class constructorendl; student()coutstudent class destructorendl;class

7、 teacher:public person / char *major; float salary; public: teacher()coutteacher class constructorendl; teacher()coutteacher class destructorendl; ;void main() student s1; / teacher t1; / 5分析程序的结果,并总结多重继承的用途#include using namespace std; class base int base_a; public: void set_base_a(int x) base_a=x;

8、 void show_base_a() coutbase_a=base_aendl; ; class derived1 int derived_b; public: void set_derived_b(int x) derived_b=x; void show_derived_b() coutderived_b=derived_bendl; ; class derived_base_d1:public base,derived1 int derived_c; public: void set_derived_c(int x,int y) derived_c=x; set_derived_b(

9、y); void show_derived_c() show_base_a(); show_derived_b(); coutderived_c=derived_cendl; ; void main() derived_base_d1 obj; obj.set_base_a(13); obj.set_derived_c(16,30); obj.show_derived_c(); obj.show_base_a(); 二、编程题1编写一个程序,定义一个汽车类(Cer),它具有一个需要传递参数的构造函数,类中的数据成员有:车型model、座位seat和车重weight,并放在保护段中;由父类私有派

10、生出两个类,分别是JEEP类和bus类。要求每个类都有相关数据的输出。#include using namespace std;class carpublic: void get() coutmodel; coutseat; coutweight; void show() coutcar model:model seat:seat weight:weightendl; protected: char model; int seat; double weight;class jeep:public carpublic: void get() coutmodel; coutseat; coutwe

11、ight; void show() coutcar model:model seat:seat weight:weightendl; ;class bus :public carpublic: void get() coutmodel; coutseat; coutweight; void show() coutcar model:model seat:seat weight:weightendl; ;void main() jeep a; a.get(); a.show(); bus b; b.get(); b.show();2设计一个父亲类father、母亲类mather、子女类child

12、,其主要数据是姓名、子女使用父亲的姓,最后输出子女的姓名和父母的姓名。#include#includestringusing namespace std; class father private : string m; protected:string x; public: void geti() cinxm; void show1() cout父亲的姓名为:xmname; void show2() cout母亲的姓名为:namename; void show3() cout子女的姓名为:xnameendl; ; void main() father f;mother m;child c;

13、cout请分别输入父亲的姓和名:endl; f.geti();cout请输入母亲的名字:endl;m.get1();cout请输入子女的名字:endl;c.get2();f.show1();m.show2();c.show3(); 3编写一个程序,已有若干名学生数据,这些数据包括学号、姓名、语文成绩、英语成绩、和数学成绩,要求设计不同的成员函数求各门课程的平均分。#include #include using namespace std;class studentpublic: int num; char name20; int chinese; int math; int english;

14、int average() int t=(chinese+math+english)/3; return t; ; ; 4建立一个简单的大学管理系统,其中有学生、教师和教辅人员。类的继承关系如图8-3所示。每个类定义一个相对于特定的不同的输出函数print(),输出各类的数据成员。#include#includestringusing namespace std; class uni private: string name; public: uni() name=北京邮电大学; void print() cout学校:nameendl; ; class stu:public uni priv

15、ate:string sname; int xh; public:stu() sname=张三; xh=1; void print1() cout学生姓名:snameendl学号:xhendl; ; class tea:public uni private:string tname; public:tea() tname=李四; void print2() cout教师姓名:tnameendl; ; class ass:public tea private:string aname; public:ass() aname=王五; void print4() cout教辅人员姓名:anameen

16、dl; ; void main() ass a;stu s; a.print(); s.print1(); a.print2(); a.print4();图8-3 编程第4题的继承关系5编一个程序,其中有三个类,分别为中国银行,浦发银行和招商银行,每个银行都包含一个用于存储用户存款的成员,要求用面向对象的编程方法求出用户在三个银行总的存款金额并显示出来。#include#includestringusing namespace std; class zgyh protected: int money1; public: void zgyh1() cinmoney1; ; class pfyh

17、protected:int money2; public:void pfyh1() cinmoney2; ; class zsyh protected:int money3; public:void zsyh1() cinmoney3; ; class z:public zgyh,public pfyh,public zsyh public:void show() cout总存款金额为:money1+money2+money3endl; ; void main() z zje;cout请输入存入中国银行的金额:endl;zje.zgyh1();cout请输入存入浦发银行的金额:endl;zje.pfyh1();cout请输入存入招商银行的金额:endl;zje.zsyh1();cout总金额为:endl;zje.show(); 2.#include #include using namespace std;class fatherpublic: char xing10; char ming15; void father(char a10,char b15) strcpy(xing,a); strcpy(ming,b); ; class child:public father ; class mother ; void main()

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1