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

加入VIP,免费下载
 

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

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

下载须知

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

版权提示 | 免责声明

本文(【计算机类职业资格】计算机等级考试二级(C++)34及答案解析.doc)为本站会员(赵齐羽)主动上传,麦多课文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知麦多课文库(发送邮件至master@mydoc123.com或直接QQ联系客服),我们立即给予删除!

【计算机类职业资格】计算机等级考试二级(C++)34及答案解析.doc

1、计算机等级考试二级(C+)34 及答案解析(总分:100.00,做题时间:90 分钟)一、选择题(每小题 2 分,共 70 分) 下列各(总题数:35,分数:70.00)1.有以下程序 void swap(char *x,char *y) char t; t=*x;*x=*y;*y=t; main() char *s1=“abc“,*s2=“123“; swap(s1,s2); printf(“%s,%s/n“,s1,s2); 程序执行后的输出结果是_。 (分数:2.00)A.123,abcB.abc,123C.1bc,a23D.321,cba2.若二维数组 a 有 m 列,则计算任一元素 a

2、 i j 在数组中相对位置的公式为( )。 (假设 a0)0位于数组的第一个位置上)(分数:2.00)A.0B.1C.2D.33.下面程序的运行结果是( )。 #includeiostreamh class base protected: int a; public: base( )cout“0“; ; class basel:virtual base public: basel( )cout“1“; ; class base2:virtual base public: base2( )cout“2“; ; class derived:public basel,public base2 pub

3、lic: derived( )cout“3“; ; void main( ) derived obj; coutendl; (分数:2.00)A.5B.3C.2D.04.以下哪个不是 C+语言中的有效标识符?(分数:2.00)A.34aB._ABC.A_BD.A255.表达式 3.6-5/2+1.2+5%2 的值是_。 (分数:2.00)A.4.3B.4.8C.3.3D.3.86.函数 fun 的返回值是( )。 fun(char*a,char*b) intnum=0,n=0; while(*(a+num)!=/0)num+; while(bn)*(a+num)=bn;num+;n+; ret

4、urnnum; (分数:2.00)A.j=i;B.j=(long)i;C.i=(int)j;D.i=j;7.对于模板定义关键字 class 和 typename 说法不正确的是( )。(分数:2.00)A.每次调用此过程,该过程中的局部变量都会被重新初始化B.在本过程中使用到的,在其他过程中定义的变量也为 Statci 型C.每次调用此过程时,该过程中的局部变量的值保持在上一次调用后的值D.定义了该过程中定义的局部变量为“自动“变量8.有以下程序 #includeiostreamh float fun(int x,int y) return(x+y); void main( ) int a=2

5、,b=5,c=8; tout fun( (int)fun(a+c,B) ,a-C) ; 程序运行后的输出结果是( )。 (分数:2.00)A.编译出错B.9C.21D.99.下列对于线性链表的描述中正确的是_。 (分数:2.00)A.存储空间不一定是连续,且各元素的存储顺序是任意的B.存储空间不一定是连续,且前件元素一定存储在后件元素的前面C.存储空间必须连续,且前件元素一定存储在后件元素的前面D.存储空间必须连续,且各元素的存储顺序是任意的10.若已定义: inta=0,1,2,3,4,5,6,7,8,9,*p=a,i; 其中 0i9,则对 a数组元素不正确的引用是( )。 (分数:2.00

6、)A.intB.doubleC.floatD.不确定11.下面程序的运行结果为( )。 # include iostreamh class A public: A( ) cout “1“; A( ) cout “2“; ; class B:public A public: B( ) cout “3“; B ( ) cout “4“; ; void main ( ) B b; (分数:2.00)A.F10B.F4C.F5D.Ctrl12.关于友元的概念错误的是( )。(分数:2.00)A.If x=y Then z=x:z=yB.If x=y Then z=x Else z=yC.z=y:If

7、x=y Then z=xD.If x=n;i-)ai+1=ai; main() int i,aN=1,2,3,4,5,6,7,8,9,10; fun(a,2,9); for(i=0;iA.10234B.12344C.12334D.1223416.C+语言中关于构造函数的说法正确的是( )。(分数:2.00)A.构造函数的函数名不必和类名相同B.构造函数只能每一个C.每个类必定有构造函数D.构造函数必有返回值17.语句 ofstreamf(“SALARY.DAT”,ios_base:app)的功能是建立流对象 f,并试图打开文件SALARY.DAT 与 f 关联,而且_。(分数:2.00)A.若

8、文件存在,将其置为空文件;若文件不存在,打开失败B.若文件存在,将文件指针定位于文件尾;若文件不存在,建立一个新文件C.若文件存在,将文件指针定位于文件首;若文件不存在,打开失败D.若文件存在,打开失败;若文件不存在,建立一个新文件18.有如下程序 #includeiostreamh voidmain( ) charch25=“6937“,“8254“,*p2; inti,j,s=0; for(i=0;i2;i+)pi=chi; for(i=0;i2;i+) for(j=0;pij,/0,;j+=2) s=10*s+pij-0; coutS; 该程序的输出结果是( )。 (分数:2.00)A.

9、69825B.63825C.6385D.69382519.以下选项中不能作为合法常量的是_。 (分数:2.00)A.12340B.1.234e0.4C.12340D.1.23420.以下语句或语句组中,能正确进行字符串赋值的是_。 (分数:2.00)A.char *sp;*sp=“right!“;B.char s10;s=“right!“;C.char s10;*s=“right!“;D.char *sp=“right!“;21.下面程序的结果是( )。 #includeiostreamh class A int a; public: A( ):a(1) void showa( ) cout

10、a; ; class B int a; public: B( ):a(2) void showa( ) cout a; ; class C:public A,public B int a; public: C( ):a(3) void showa( ) cout a; ; void main( ) C c; cshowa( ); (分数:2.00)A.将 private int m 改为 protected int mB.将 private int m 改为 public int mC.将 private int m 改为 static iD.将 private int m 改为 int m2

11、2.设变量 a 是 int 型,f 是 double 型,i 是 float 型,则表达式 10 + a + i * f 值的数据类型是( )。(分数:2.00)A.intB.floatC.doubleD.不确定23.下列选项中不属于结构化程序设计方法的是_。 (分数:2.00)A.自顶向下B.逐步求精C.模块化D.可复用24.设变量已正确定义,则以下能正确计算 f=n!的程序段是_。 (分数:2.00)A.f=0; for(i=1;i1;i+) f*=i;D.f=1; for(i=n;i=2;i-) f*=i;25.下列程序的运行结果为( )。 #includeiostreamh void

12、main( ) int a=2; int b=a+1; cout a/b endl; (分数:2.00)A.实体完整性B.域完整性C.参照完整性D.以上各项都需要定义26.若有以下说明和定义 union dt int a;char b;double c;data; 以下叙述中错误的是_。 (分数:2.00)A.data 的每个成员起始地址都相同B.变量 data 所占的内存字节数与成员 c 所占字节数相等C.程序段 data.a=5;printf(“%f/n“,data.;输出结果为 5.000000D.data 可以作为函数的实参27.下面程序段的运行结果是( )。 voidmain( )

13、ihtt,a,b,C; a=1;b=2;C=2; while(abc) t=a;a=b;b=t;c-; couta“,“b“,“C; (分数:2.00)A.8B.9C.7D.628.下面关于数组的初始化正确的是( )。(分数:2.00)A.char str :a,b,cB.char str2=a,b,cC.char str23=a,b,c,d,e,fD.char str( )=a,b,c29.有如下程序 #include #include using namespace std; class MyClass public: MyClass()cout=0) printf(“%c“,sn-);

14、当编译连接通过后,运行程序 T18 时,输入 Thank!则输出结果是: 5。 (分数:2.00)填空项 1:_46.派生类构造函数的执行顺序是先执行 1 的构造函数,然后执行成员对象的构造 函数,最后执行 2 的构造函数。 (分数:2.00)填空项 1:_47.派生类构造函数的执行顺序是先执行 1 的构造函数,然后执行成员对象的构造 函数,最后执行 2 的构造函数。 (分数:2.00)填空项 1:_48.构造函数是和 1 同名的函数。(分数:2.00)填空项 1:_49.类 test 的析构函数是 1。(分数:2.00)填空项 1:_50.程序 #include“ iostreamh“ vo

15、id main1 int i=10; jnt j=5; cout j+i+ end1; 的结果为 2 (分数:2.00)填空项 1:_计算机等级考试二级(C+)34 答案解析(总分:100.00,做题时间:90 分钟)一、选择题(每小题 2 分,共 70 分) 下列各(总题数:35,分数:70.00)1.有以下程序 void swap(char *x,char *y) char t; t=*x;*x=*y;*y=t; main() char *s1=“abc“,*s2=“123“; swap(s1,s2); printf(“%s,%s/n“,s1,s2); 程序执行后的输出结果是_。 (分数:

16、2.00)A.123,abcB.abc,123C.1bc,a23 D.321,cba解析:此题考核的知识点是指针变量值的交换。C 语言中,字符串常量在内存中是以字符数组的形式进行 存放的,因此字符指针 x 和 y 指向的是各字符串的首地址,也就是字符串第一个字符的地址,则*x 与*y 交 换的是字符串的第一个字符,即字符“a”与“1”的交换,而字符串中其它字符保持不变,所以答案选 C。2.若二维数组 a 有 m 列,则计算任一元素 a i j 在数组中相对位置的公式为( )。 (假设 a0)0位于数组的第一个位置上)(分数:2.00)A.0B.1C.2 D.3解析:本题首先通过第一个 whil

17、e 循环计算字符串 a 的长度,再通过第二个循环,将字符串 a 和 b 相连,最后返回连接后的总长度。 3.下面程序的运行结果是( )。 #includeiostreamh class base protected: int a; public: base( )cout“0“; ; class basel:virtual base public: basel( )cout“1“; ; class base2:virtual base public: base2( )cout“2“; ; class derived:public basel,public base2 public: derive

18、d( )cout“3“; ; void main( ) derived obj; coutendl; (分数:2.00)A.5B.3C.2 D.0解析:本题考查三目运算符“?:”。三目运算符的表达式为(表达式 1)?(表达式 2):(表达式 3),运算过程是当(表达式 1)的值为真时,求(表达式 2)的值为整个表达式的值;如果(表达式 1)的值为假,则求(表达式 3)的值为整个表达式的值。题中,表达式 x12 的结果为假,所以执行的语句是 x-12,最终结果应该是 0。4.以下哪个不是 C+语言中的有效标识符?(分数:2.00)A.34a B._ABC.A_BD.A25解析:本题考查 c+语言

19、标识符规则。在 C+语言中,标识符只能由数字,字母,下划线组成,并且第一个字符不能是数字。注意:选项 A)是以数字开始的。5.表达式 3.6-5/2+1.2+5%2 的值是_。 (分数:2.00)A.4.3B.4.8C.3.3D.3.8 解析:此题考核的是算术运算符的运算规则,算术运算符的结合方向为“自左至右”,先按运算符的优先 级别高低次序执行,同时在 C 中两个整数相除或求余数其结果依旧为整数。计算后结果为 3.8。6.函数 fun 的返回值是( )。 fun(char*a,char*b) intnum=0,n=0; while(*(a+num)!=/0)num+; while(bn)*(

20、a+num)=bn;num+;n+; returnnum; (分数:2.00)A.j=i;B.j=(long)i;C.i=(int)j;D.i=j; 解析:+,-运算符不能用于常量表达式。7.对于模板定义关键字 class 和 typename 说法不正确的是( )。(分数:2.00)A.每次调用此过程,该过程中的局部变量都会被重新初始化B.在本过程中使用到的,在其他过程中定义的变量也为 Statci 型C.每次调用此过程时,该过程中的局部变量的值保持在上一次调用后的值 D.定义了该过程中定义的局部变量为“自动“变量解析:Style 属性用来决定控件类型及列表框部分行为,其值取 0,1,2。

21、0-Dropdown Combo Box:此时组合框称为“下拉式组合框”,看上去像一个下拉列表框,但是可以输入文本或从下拉列表框中选择表项。 1-Simple Combo Box:此时组合框称为“简单组合框”,它由一个文本编辑区和一个标准列表框组成。 2-Dropdown List Box:此时组合框称为“下拉式列表框”,它的外观和下拉式组合框一样,右端也有一个箭头,可供“拉下”或“收起”列表框,可以从下拉列表框选择表项,也可以键入表项的文本作选择,但不接收其他文本输入。 8.有以下程序 #includeiostreamh float fun(int x,int y) return(x+y);

22、 void main( ) int a=2,b=5,c=8; tout fun( (int)fun(a+c,B) ,a-C) ; 程序运行后的输出结果是( )。 (分数:2.00)A.编译出错B.9 C.21D.9解析:本题的运算过程是 fun( (int) fun(a + c,B) ,a-C) ,fun( (int)fun (10,5),2-8),fun( (int)15000000,-6),fun(15,-6)=9。9.下列对于线性链表的描述中正确的是_。 (分数:2.00)A.存储空间不一定是连续,且各元素的存储顺序是任意的 B.存储空间不一定是连续,且前件元素一定存储在后件元素的前面C

23、.存储空间必须连续,且前件元素一定存储在后件元素的前面D.存储空间必须连续,且各元素的存储顺序是任意的解析:在链式存储结构中,存储数据结构的存储空间可以不连续,各数据结点的存储顺序与数据元素之间 的逻辑关系可以不一致,而数据元素之间的逻辑关系是由指针域来确定的。10.若已定义: inta=0,1,2,3,4,5,6,7,8,9,*p=a,i; 其中 0i9,则对 a数组元素不正确的引用是( )。 (分数:2.00)A.intB.doubleC.float D.不确定解析:本题中,首先将 0 赋给 k,表达式变为 0,跳出循环,没有执行循环体语句。解答本题的关键是掌握 while 语句。11.下

24、面程序的运行结果为( )。 # include iostreamh class A public: A( ) cout “1“; A( ) cout “2“; ; class B:public A public: B( ) cout “3“; B ( ) cout “4“; ; void main ( ) B b; (分数:2.00)A.F10 B.F4C.F5D.Ctrl解析:对于 template Tadd(T x,T y) return x + y; 调用时町以省略模板实参的声明,但是要求x 和 y 的数据类型必须是一样的。 12.关于友元的概念错误的是( )。(分数:2.00)A.If

25、 x=y Then z=x:z=y B.If x=y Then z=x Else z=yC.z=y:If x=y Then z=xD.If x=n;i-)ai+1=ai; main() int i,aN=1,2,3,4,5,6,7,8,9,10; fun(a,2,9); for(i=0;iA.10234B.12344C.12334 D.12234解析:本题函数 fun 的作用是将指定的数组元素(从下标 n 到下标 m)向后移一位。由函数调用“fun(a,2,9);”可知,函数 fun 用于将 a2 到 a9的各元素依次向后移一位,移完后,a 数组中各元素的值分别为 1,2,3,3,4,5,6,

26、7,8,9,10,故输出的前 5 个数组元素为 12334。16.C+语言中关于构造函数的说法正确的是( )。(分数:2.00)A.构造函数的函数名不必和类名相同B.构造函数只能每一个C.每个类必定有构造函数 D.构造函数必有返回值解析:本题考查构造函数的概念。构造函数的函数名必须和类名相同;构造函数可以有一个,也可以有多个;构造函数没有返回值。17.语句 ofstreamf(“SALARY.DAT”,ios_base:app)的功能是建立流对象 f,并试图打开文件SALARY.DAT 与 f 关联,而且_。(分数:2.00)A.若文件存在,将其置为空文件;若文件不存在,打开失败B.若文件存在

27、,将文件指针定位于文件尾;若文件不存在,建立一个新文件C.若文件存在,将文件指针定位于文件首;若文件不存在,打开失败D.若文件存在,打开失败;若文件不存在,建立一个新文件解析:18.有如下程序 #includeiostreamh voidmain( ) charch25=“6937“,“8254“,*p2; inti,j,s=0; for(i=0;i2;i+)pi=chi; for(i=0;i2;i+) for(j=0;pij,/0,;j+=2) s=10*s+pij-0; coutS; 该程序的输出结果是( )。 (分数:2.00)A.69825B.63825C.6385 D.693825解

28、析:该题主要要搞清楚以下几点: 定义了一个指针数组 char * P2后,程序中第一个循环 for(i=0;i/0是指 Pij中的字符只要不是字符串结束标 志/0,就继续循环,语句 j+ =2;是使下标 j 每次增加 2,也即一个隔一个地从 pi所指向 的字符串中取出字符。经过上述解析后,不难看出,该程序首先从 P0所指向的字符串 “6937”中一个隔一个地取出字符,分别是“6”和“3”,然后从p1所指向的字符串 “8254”中一个隔一个地取出字符,分别是“8”和“5”,同时经过转换和相加运算后,结果 s 中的值应该是 6385。 19.以下选项中不能作为合法常量的是_。 (分数:2.00)A

29、.12340B.1.234e0.4 C.12340D.1.234解析:指数形式的实型常量要求字母 e(或 E)之前必需有数字,且 e 后面的指数必须为整数,所以本题中 选项 B 非法。20.以下语句或语句组中,能正确进行字符串赋值的是_。 (分数:2.00)A.char *sp;*sp=“right!“;B.char s10;s=“right!“;C.char s10;*s=“right!“;D.char *sp=“right!“; 解析: 选项 A 定义了字符型的指针变量 sp,则*sp 存储的是第一个字符,而给它赋的是字符串,故错;选项 B 表示代表数组的首地址,而题中给它赋的是字符串,所

30、以错误;选项 C 定义了一个字符型的数组 s10,再通过*s 给数组元素赋初值,这时是与选项 A 相同的错误。21.下面程序的结果是( )。 #includeiostreamh class A int a; public: A( ):a(1) void showa( ) cout a; ; class B int a; public: B( ):a(2) void showa( ) cout a; ; class C:public A,public B int a; public: C( ):a(3) void showa( ) cout a; ; void main( ) C c; csho

31、wa( ); (分数:2.00)A.将 private int m 改为 protected int mB.将 private int m 改为 public int mC.将 private int m 改为 static i D.将 private int m 改为 int m解析:复选框 Checkbox 用 ItemListener 来监听 ItemEvent 事件,当复选框状态改变时用getStateChange()获取其当前状态,使用 getItem()获得被修改复选框的字符串对象。 22.设变量 a 是 int 型,f 是 double 型,i 是 float 型,则表达式 10

32、 + a + i * f 值的数据类型是( )。(分数:2.00)A.intB.floatC.double D.不确定解析:根据混合运算规则,如果有一个数据是 double 型,则其他数据类型先转化为 double 型,运算的结果最终也是 double 型。为保证精度的不丢失,表达式的数据类型是变量和常量中精确度最高的变量类型。23.下列选项中不属于结构化程序设计方法的是_。 (分数:2.00)A.自顶向下B.逐步求精C.模块化D.可复用 解析: 20 世纪 70 年代以来,提出了许多软件设计方法,主要有逐步求精:对复杂的问题,应设计一些 子目标作过渡,逐步细化;自顶向下:程序设计时应先考虑总

33、体,后考虑细节;先考虑全局目标,后考 虑局部目标。不要一开始就过多追求众多的细节,先从最上层总目标开始设计,逐步使问题具体化;模 块化:一个复杂问题,肯定是由若干稍简单的问题构成。模块化是把程序要解决的总目标分解为分目标, 再进一步分解为具体的小目标,把每个小目标称为一个模块,而可复用是面向对象程序设计的一个优点。24.设变量已正确定义,则以下能正确计算 f=n!的程序段是_。 (分数:2.00)A.f=0; for(i=1;i1;i+) f*=i;D.f=1; for(i=n;i=2;i-) f*=i; 解析:n!=n*(n-1)*2*1,由于选项 A 中 f 的初值为 0,所以循环 n 次

34、后,f 值依然为 0,故选项 A 错误; 选项 B 中循环的终止条件是“i1 时,由于初值“i=n”是符合条件“i1”的,且增量为+1,故循环中永远不会出 现不满足条件“i1”的值,所以出现死循环。25.下列程序的运行结果为( )。 #includeiostreamh void main( ) int a=2; int b=a+1; cout a/b endl; (分数:2.00)A.实体完整性B.域完整性 C.参照完整性D.以上各项都需要定义解析:随机文件流提供了访问文件中任意一段位置。如果是一个比较大的文件,我们采用略去前面不必要的内容,直接去读取需要的内容,随机文件流提供了这样的方法,这

35、样会有很多的时间和资源。所以我们用 Random Stream 来访问这个文件。在 Random Stream 中有一个方法 public int skipBytes(int n)throws IOException,随机文件访问跳过指定的字节。这个方法比较有用,在本题的情况下,用它比较快捷的读取必要的内容。 26.若有以下说明和定义 union dt int a;char b;double c;data; 以下叙述中错误的是_。 (分数:2.00)A.data 的每个成员起始地址都相同B.变量 data 所占的内存字节数与成员 c 所占字节数相等C.程序段 data.a=5;printf(“

36、%f/n“,data.;输出结果为 5.000000 D.data 可以作为函数的实参解析: union 是表示共用体的关键字,成员 a,b,c 共占用同一个内存空间, data 的每个成员起始地址都相 同;共用体变量所占的内存长度等于最长的成员的长度,故变量 data 所占的内存字节数与成员 c 所占字节 数相等;执行“data.a=5;printf(“%f/n“,data.c);” printf 函数只是将内存中的数据以不同的类型输出,而不能将 内存中的整型数据自动转换为等值的浮点数,故 C 是错误的。27.下面程序段的运行结果是( )。 voidmain( ) ihtt,a,b,C; a

37、=1;b=2;C=2; while(abc) t=a;a=b;b=t;c-; couta“,“b“,“C; (分数:2.00)A.8 B.9C.7D.6解析:本题考查的是 DOLoopUntil,结构的循环语句,不管满不满足条件,都要先执行一次。经分析当I7(或 8 或 9)都满足执行三次的条件,但题目要求最小的,所以应该是 7。28.下面关于数组的初始化正确的是( )。(分数:2.00)A.char str :a,b,c B.char str2=a,b,cC.char str23=a,b,c,d,e,fD.char str( )=a,b,c解析:本题考查的是字符数组的初始化。选项 B)中用

38、3 个元素初始化大小为 2 的数组,越界了;选项 C)中应该是 2 行 3 列的数组,题中使用 3 行 2 列初始化;选项 D)中数组合后应用方括号。29.有如下程序 #include #include using namespace std; class MyClass public: MyClass()cout=0) printf(“%c“,sn-); 当编译连接通过后,运行程序 T18 时,输入 Thank!则输出结果是: 5。 (分数:2.00)填空项 1:_ (正确答案:!knahT)解析:本题考核的知识点是“文件包含”处理功能,“文件包含”处理是指一个源文件可以将另外一个源 文件的

39、全部内容包含进来,供源文件使用。此题中“myfun.c“就是被包含在 T18.c 下进行编译。myfun.c 文件 是用来实现字符串反序的功能,用 getchar-|_|-函数输入字符并赋给数组 s,每输入一个字符,数组下标 n 自行加 1,直到遇到回车键时输入结束。while(n=0)下的条件语句就是来实现字符串反续功能的。46.派生类构造函数的执行顺序是先执行 1 的构造函数,然后执行成员对象的构造 函数,最后执行 2 的构造函数。 (分数:2.00)填空项 1:_ (正确答案:基类)解析:本题主要考查的是派生类构造函数的执行顺序,在 C+语言中构造函数的执行顺序是先基类后派生类,而析构函

40、数的执行顺序正好相反,是先调用派生类后调用基类。 47.派生类构造函数的执行顺序是先执行 1 的构造函数,然后执行成员对象的构造 函数,最后执行 2 的构造函数。 (分数:2.00)填空项 1:_ (正确答案:基类)解析:本题主要考查的是派生类构造函数的执行顺序,在 C+语言中构造函数的执行顺序是先基类后派生类,而析构函数的执行顺序正好相反,是先调用派生类后调用基类。 48.构造函数是和 1 同名的函数。(分数:2.00)填空项 1:_ (正确答案:类)解析:C+语言中的构造函数就是在类中定义的和类名一样的函数。49.类 test 的析构函数是 1。(分数:2.00)填空项 1:_ (正确答案:test-|_|-;)解析:C+语言中虚构函数在每个类中只有一个,其函数的写法是在构造函数的前面加一个“”字符。 50.程序 #include“ iostreamh“ void main1 int i=10; jnt j=5; cout j+i+ end1; 的结果为 2 (分数:2.00)填空项 1:_ (正确答案:15)解析:i+为先做与 i 有关的运算后,i 自加 1,而+i 是先给 i 加 1 再进行与 i 有关的操作

copyright@ 2008-2019 麦多课文库(www.mydoc123.com)网站版权所有
备案/许可证编号:苏ICP备17064731号-1