国家二级(C++)机试模拟试卷3 (三).pdfVIP

  • 1
  • 0
  • 约3.9万字
  • 约 23页
  • 2026-01-06 发布于河北
  • 举报

国家二级C(++)机试模拟试卷第1套

一、程序改错题本(题共[题,每题7.0分,共[分)

1、使用VC6打开考生文件夹下的工程tesll4_l,此工程包含一个源程序文件

testl4」.cpp,但该程序运行有问题,请改正程序中的错误,使该程厉的输出结果

如下:member1=5mcmbcr2=5member1=7mcmbcr2=9源程序文件tcst14_l.cpp清单

如下:#includeiostream.hclassMyClass{/**************found

*****************friendvoidsetMember(MyClassmyObj,charmeml)

{myObj.member1=mcmI;myObj.mcmbcr2=mcm1;cout*member1=

myObi.member1member2=myObj.member2endl;}/**************

found***************;voidsetMember(MyClassmyObj,charmem1,char

mcm2){myObj.member1=mcm1;myObj.mcmbcr2=mcm2;coutmember1:

myObj.member1member2=,myObj.member2endl;}private:

charmember1:charmember2:):voidmain()(MyClasstheObj:

*************

/**************found***/theObj.setMember(thcObj,5);

theObj.setMember(theObj,7,,9);!

标准答案:⑴错误:friendvoidsetMember(MyClassmyObj,charmem1)正确:friend

voidsetMcmbcr(MyClassmyObjcharmem1)(2)错误:voidsetMembcr(MyClass

myObj,charmemI,charmem2)正确:friendvoidsetMembe(MyClass

,

myObj,charmem1,charmem2)(3)错误:theObj.setMember(theObj/5):

theObj.setMember(theObjT,9);正确:setMember(theOebj,5);

setMember(theObj,

知识点解析,I()主要考查考生对于友元函数定义的掌握.应该使用引用调用才能

改变该对象的成员值;2()主要考查考生对于友元函数重载的掌握,因为前面已经

有了同名函数,很明显这个函数也应该为友元函数,所以关键字friend声明;3()

主要考查考生是否会使用友元函数,调用友元函数和普通函数的方法一样,不需要

使用对象访问。

二、简单应用题本(题共I题,每题L0分,共[分0)

2、请编写一个函数charMaxCharacmr(char*str),该函数返回参数str所指向的字

符串中具有最大ASCII码的那个字符如(字符申“world”中字符,w,具有最大的ASCII

码)。当str所指向的字符串为空时,则返回空字符0x0或、0、输出结果如下:

GoodMorning!Maxchar:r注意:部分源程序已存在文件test15_2.cpp中。请勿修

改主函数main和其他函数中的任何内容,仅在函数MaxCharacter的花括号中填写

若干语句。文件testl5_2.cpp的内容如下:#incki

文档评论(0)

1亿VIP精品文档

相关文档