还剩2页未读,继续阅读
文本内容:
四、程序分析题前三小题各6分,第五题7分,共25分
1.指出下而程序中的1处错误,并说明原因#includeiostream.hclass Point{int X,Y:public:Point{X=0;Y=0;}Poinlint x=0,int y=0{X=x;Y=y;}void display{coul«X«,,,w«Y«endl;}};void main{Point p;p.displayO;答
2.指出下面程序中的I处错误,并说明原因#inckideiosream.hclass CTest{public:CTest{x=20:}private:int x;friend void friend_fCTest fri;};voidfriend_fCTest fri{fri.x=55;}void main{CTest cI,c2;cl.friend_fc2;答
3.写出下面程序的运行结果#includeiostream.hclass Testprivate:ini num;public:Testint n=0{num=n;num++;}-Test{coul«M Destructoris active,nurnber=M«nuin«endl;}};void main{Test x⑵;cout«M Exitingmain«cndl;答
4.写出下面程序的运行结果#inckideiosream.hclass Testprivate:static intval;int a;public:static intfunc;static voidsfuncTcst r;;int Test::val=20;intIest::func{val-;return val;}void Test::sfuncTcst r{r.a=25;cout«Result3=M«r.a;}void main{cou«Resultl=Test::func«endk lesta;coutResult2=«a.func«endl:Test::sfunca;答:C++程序设计期末考试答案
一、选择题15X2I.B
2.C
3.C
4.D
5.B
6.C
7.B
8.D
9.D
10.DI
1.B
12.A
13.B
14.A I
5.B
二、判断题7X
21.V
2.X
3.X
4.X
5.X
6.X
7.X
三、简答题4X
41.解答要点
2.所谓数据的封装,就是将数据结构和作用于数据结构上的操作组成一个实体,数据的表示方式和对数据的操作细节被隐臧起来,用户通过操作接口对数据进行操作对于用户来说,只知道如何通过操作接口对该数据进行操作,而并不知道是如何操作的,也不知道数据是如何表示的,这就是数据的封装例如我们经常使用的手机,机壳将零件和线路封装了起来,我们在接打电话或收发短信时是通过手机面板上的按键接口解答要点1函数重载是指一个标识符可同时用于为多个函数命名2运算符重载是指一个运算符可同时用于多种运算也就是说,相同名字的函数或运算符在不同的场合可以表现出不同的行为
3.3使用而载的目的是为了更好地表达行为共享.可以使程序员在只知道操作的•般含义而不知道操作的具体细节的情况下能正确地对某个对象使用一个操作另外,使用重载的直接益处是减少了程序员记忆操作名字的负担解答要点1用一个对象初始化另一个对象时;2当用对象作为函数参数传递时;3当程序中需要创建临时对象时如函数返回对象时解答要点I类是一组具有共同的属性特征和行为特征的对象的抽象;
四、2对象就是系统中用来描述客观事物的一个实体,它是构成系统的一个基木单位,由一组属性和•组行为构成
五、3类和对象之间的关系是抽象和具体的关系,类是对多个对象进行抽象的结果,对象是类的具体实现
六、程序分析题4X
61.错误位置Point p:错误原因当生成无参对象时,缺省参数的构造函数和默认参数的构造函数会产生混淆
2.错误位置cl.friend_f c2;错误原因friend_f是类的友元函数,应直接调用,而不能用调用对象成员的方式
3.Exiting mainDestructoris aciivc,nuniber=lDestructor isactive.nuinber=l
4.Resultl=19Result2=l8Rcsull3=25。
个人认证
优秀文档
获得点赞 0