您好,欢迎访问三七文档
当前位置:首页 > 电子/通信 > 综合/其它 > C++程序设计实践指导书11
C++程序设计实践上机指导书(第十一次)专业班级学号姓名信息学院2实践成绩评价说明1)上机前充分准备实践材料,对上机内容有程序草稿。(10分)2)独立完成实践任务,对实践过程非常清晰。(30分)3)认真理解知识点,能够与理论知识相结合。(10分)4)在机房遵守上机守则,接受实践指导教师的监督与管理。(20分)5)认真填写实践指导书,写出实践小结。(10分)6)在实践中具备一定的创新思想,能够主动与指导教师探讨。(5分)7)加大实践工作量,主动完成实践指导书中的选做题目。(5分)8)掌握程序调试的方法,认真完成程序调试工作,使程序能够运行(10分)。3上机十一类的继承(二)一、目的1.理解继承与派生、单继承与多继承的概念;2.掌握基类与派生类的定义及使用方法,派生类对象及初始化方法;3.理解派生类构造函数与析构函数的声明方法与调用顺序。二、要求:1.在上课之前,每一个同学必须将题目、程序编写完毕,做好充分的准备。2.所有环节均由每位同学独立完成,严禁抄袭他人结果。三、步骤和内容1.运行书P268,例7-5。体会构造函数与析构函数的执行顺序。2.运行书P274,例7-7及P278,7.5.3节的实例,在四个构造函数中分别添加一句话,体会虚基类的使用及派生类构造函数的调用过程。3.由在校人员类(Person)作为基类派生出学生类(Student):在校人员类有成员数据:编号(ID)、姓名(name)、性别(sex)、年龄(age),要求有如下成员函数:构造函数、获取编号的函数和输出所有成员的函数。把在校人员类作为基类,通过公有继承,派生学生类,派生类新增成员数据有数学(math)、物理(physical)、英语(english)和C++程序设计(cpp)四门课程以及总成绩(total);新增成员函数有构造函数和输出所有成员的函数。main()完成派生类对象的定义和有关成员函数的测试。四、思考题1、继承与派生的过程。五、结果分析1.#includeiostreamusingnamespacestd;classBase1{public:Base1(inti){coutConstructingBase1iendl;}~Base1(){coutDestructingBase1endl;}};classBase2{public:4Base2(intj){coutConstructingBase2jendl;}~Base2(){coutDestructingBase2endl;}};classBase3{public:Base3(){coutConstructingBase3*endl;}~Base3(){coutDestructingBase3endl;}};classDerived:publicBase2,publicBase1,publicBase3{public:Derived(inta,intb,intc,intd):Base1(a),member2(d),member1(c),Base2(b){}private:Base1member1;Base2member2;Base3member3;};intmain(){Derivedobj(1,2,3,4);return0;}2.#includeiostreamusingnamespacestd;classBase0{public:intvar0;voidfun0(){coutMemberofBase0endl;}};classBase1:publicBase0{public:intvar1;};classBase2:publicBase0{public:intvar2;};classDerived:publicBase1,publicBase2{public:intvar;5voidfun(){coutMemberofDerviedendl;}};intmain(){Derivedd;d.Base1::var0=2;d.Base1::fun0();d.Base2::var0=3;d.Base2::fun0();}3.#includeiostreamusingnamespacestd;classBase0{public:Base0(intvar):var0(var){}intvar0;voidfun0(){coutMemberofBase0endl;}};classBase1:virtualpublicBase0{public:Base1(intvar):Base0(var){}intvar1;};classBase2:virtualpublicBase0{public:Base2(intvar):Base0(var){}intvar2;};classDerived:publicBase1,publicBase2{public:Derived(intvar):Base0(var),Base1(var),Base2(var){}intvar;voidfun(){coutMemberofDerviedendl;}};intmain(){Derivedd(1);d.var=2;d.fun0();return0;}63.#includeiostream#includestringusingnamespacestd;classPerson{public:Person(inti,char*n,chars,inta){ID=i;name=n;sex=s;age=a;}intgetID(){returnID;}voidshow(){coutID:IDendl;coutname:nameendl;coutsex:sexendl;coutage:ageendl;}private:intID;stringname;charsex;intage;};classStudent:publicPerson{public:Student(inti,char*n,chars,inta,floatm,floatp,floate,floatc):Person(i,n,s,a){math=m;physical=p;english=e;cpp=c;total=math+physical+english+cpp;}voidshow(){Person::show();coutmath:mathendl;7coutphysical:physicalendl;coutenglish:englishendl;coutC++:cppendl;couttotal:totalendl;}private:floatmath,physical,english,cpp,total;};intmain(){Personp1(1,张三,'M',22);p1.show();coutendl;Students1(2,aa,'w',24,85,70,75,88);s1.show();}六、指导教师评阅成绩
本文标题:C++程序设计实践指导书11
链接地址:https://www.777doc.com/doc-5465873 .html