2021年黑龙江省鹤岗市全国计算机等级考试C++语言程序设计预测试题(含答案).docx
《2021年黑龙江省鹤岗市全国计算机等级考试C++语言程序设计预测试题(含答案).docx》由会员分享,可在线阅读,更多相关《2021年黑龙江省鹤岗市全国计算机等级考试C++语言程序设计预测试题(含答案).docx(43页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、2021年黑龙江省鹤岗市全国计算机等级考试C+语言程序设计预测试题(含答案)学校:班级:姓名:考号:一、1.选择题(10题)1 .通常拷贝构造函数的参数是()A.某个对象名B.某个对象的成员名C.某个对象的引用名D.某个对象 的指针名2 .带有虚基类的多层派生类构造函数的成员初始化列表中都要列出虚 基类的构造函数,这样将对虚基类的子对象初始化()。A.与虚基类下面的派生类个数有关B.多次C.两次D.一次3 .在C+程序中,如果要求通过函数来实现一种简单的功能,并且要求 尽可能加快程序的执行速度,则应该选用()。A.内联函数B.重载函数C.递归调用D.嵌套调用4 .不合法的main函数命令行参数
2、表示形式是A.main(int a, char*c)B.main(int arc, char*arv)C.main(int argc, char*argv)D.main(int argv, char*argc)public:Myclass(int num);Myclass();public:int *p;;Myclass: :Myclass( int hum) 1Myclass:Myelass() ;o32 .一个项目具有一个项目主管,一个项目主管可管理多个项目。则实 体集“项目主管“与实体集“项目”的联系属于 的联系。33 .当循环队列非空且队尾指针等于队头指针时,说明循环队列已满, 不能进
3、行入队运算。这种情况称为【】。34 .有如下程序:#include using namespace std ;template T total (T * data) Ts=0 ;While(* data)s+ = *data + + ;return s ;int main()int x : 2, 4, 6, 8, 10, 12, 14, 16, 18);cout total(x);35 .在下面函数的横线处填上适当的内容使该函数能够利用递归方法求解字符串str的长度(不得使用系统提供的字符串处理函数)。int GetLen(char *str (if( ) return ;else retur
4、n 1 +GetLen (str+1);)四、程序改错题(10题)36 .使用VC+ + 6 .0打开考生文件夹下的源程序文件1 .cpp,该程序运行有问题,请改正main函数中的错误,使程序的输出结果为:number=lnumber=10number=100注意:不要改动main函数,不能增加或删除行。也不能更改程序的结构,错误的语句在/ / *err()r*的下面0试题程序:#includeclassTC (public :TC(inti)number=i ;)voidSetNumber(intm)(number=m ;intGetNumberconst(returnnumber ;)vo
5、idPrintconst (cout,number=Hnumberendl ;)private :intnumber ;voidmainTCobjl ;objl . Print ;TCobj2(3);/ /不不不不不不不不error不不不不予予不objl . number=10 ;I I * * *error*%o* * * * * *TC . SetNumber(lOO);obj2 . Print ;37 .使用VC+ + 6 .。打开考生文件夹下的源程序文件1 . cpp,该程序运行时有错误,请改正程序中的错误。本程序要求实现 的功能为从键盘输入一个字符串,并将结果保存到文件1 .txt中
6、。注意:不要改动main函数,不能增加或删除行,也不能更改程序的结构,错误的语句在I I * * * * * *enor* * * * * * 的下面。试题程序:#include#include/ / * error 不*不 不* 不不usingstd ;voidWriteFile(char*s) ofstreamoutl ;outl . open(l . txt, binary|app);for(inti=0 ; si!=0 ; i + + ) outl . puts(si);outl . close ;voidClearFile ofstreamout 1 ;outl . open(l .
7、 txt);outl . close ;intmain(chars1024;ClearFile ;coutHpleaseinputastrin9 : endl ;cin . getline(s, 1024);WriteFile(s);returnO ;)38 .使用VC+6. 0打开考生文件夹下的源程序文件1.叩p,该程序运行时有错误,请改正错误,使程序正常运行,并且要求最后一个catch必须抛出执行的任何异常。程序异常,输出信息为errorOERROR注意:不要改动main函数,不能增加或删除行,也不能更改程序的结构,错误的语句在/ / *error*的下面。试题程序:#includeios
8、tream. h) intmain try(throw(error”);catch(chars)(coutsendl ;throw(int)0);/ I *木*error*字catch(coutiendl; try (throw(O);throw(,errorH);catch coulvv”ERRORvendl ;returnO;39 .使用VC+6. 0打开考生文件夹下的源程序文件 1. cpp,该程序运行时有错误,请改正程序中的错误。本程序要求实现的功能为从键盘输入一个字符串,并将结果保存到文件1.txt中。注意:不要改动main函数,不能增加或删除行,也不能更改程序的结 构,错误的语句在
9、/ / *en*or*的下面试题程序:#include#include/小小小小小小小小rrcr不不不不不不不不usingstd;voidWriteFileCchar*s) ofstreamoutl ;/1* * * * */ *举举*prmr、*,、outl. open(nl. txt,binary|app);for(inti=0; siJ!=O; i + +)/! * * * * */ *汴不不P!*T*Or不/不3 3 3 3outl. puts(si); )outl. close;voidClearFile ofstreamout 1 ;outl. open(l. txt);outl.
10、 close;)intmain(charsf 10241;ClearFile;coutnpleaseinputastrin9 :uendl;cin. getline(s, 1024);WriteFile(s);returnO;)40.使用VC+ +6 .0打开考生文件夹下的源程序文件1 .cpp,该程序运行时有错误,请改正程序中的错误,使得程序输出:9, 8, 7, 6, 5注意:错误的语句在/ *en*or* /的下面,修改该语句即可。其他的语句不能修改。试题程序:#include(iostream . hclassTCTC(inti) m_i=i ;) voidprint(coutm_i,
11、;)public :intm_i ;intmainI *2* /不不不不不不不不prr()r不不不不干不不苓/inti ;TC04(10);while(i5)I *en*Or* /04 . print ;coutendl ;returnO ;41.使用VC+6.。打开考生文件夹下的源程序文件1.cpp,但该程 序运行有问题,请改正main函数中的错误,使该程序的输出结果正 确。程序输出:8 8注意:错误的语句在/ *error* /的下面。修改该语句 即可,其他的语句不能修改。试题程序:#include(iostream. hclassCO(public:小小小小小小小小errcr不不不不不不
12、不不/staticintn=O:CO(n+ + :)CO(n:):/*!* *1* *1* *1* *1*f汴汴汴举举举举举pri*cr/intCO: n; voidmain5.己知枚举类型声明语句为:enum COLOR WHITE, YELLOW, GREEN=5, RED, BLACK=10;则下列说法中错误的是()。A.枚举常量YELLOW的值为1B.枚举常量RED的值为6C.枚举常量BLACK的值为10D.枚举常量WHITE的值为16 .若有一个MyClass类,则执行语句MyClass a,b(2), *p ;后,自动调 用该类的构造函数()次。A.2 B,3 C.4 D.57 .
13、在C+语言程序中A.函数的定义可以嵌套,但函数的调用不可以嵌套8 .函数的定义和调用均可以嵌套C.函数的定义和调用均不可以嵌套D.函数的定义不可以嵌套,但函数的调用可以嵌套9 .以下定义:int(*p)4中,标识符p是()。A.一个指向整型变量的指针B.一个指针数组名C.一个指针,它指向一个含有4个整型元素的一维数组D.说明不合法10 执行语句for(i = l;i+ + 4;);后,变量i的值是A.3B.4C.5 D.不定COobj;COobj27;CO*C=NULL:c=&obj:* 举举eii*cr* * * /eoutC. nendl ;coutC0: nendl; )42 .使用VC
14、+6. 0打开考生文件夹下的源程序文件1.p,该程序 运行时有错,请改正其中的错误,使程序正常运行,输出的结果为Constructor, i=0, Destructor 注意:错误的语句在/ / *error*的下面,修改该语句即可。试题程序:#include(iostream. h) classTC ( inti;public:TC;voiddisplay;TC;);/汴*不举不prmr* * *汴*TC: TC coutnConstructorn, i=0;/、1*、1*、1*、*2/不不不不不不prror不不不予不不TC: display touti=ni, endl;/ 4,4 *1*
15、 , !* !* !-/小小小小小小ermr不不不不不不TC: TCCOUInDestructorendl :voidmainTCa;a. display;43 .使用VC+ + 6 .0打开考生文件夹下的源程序文件1 ,cpp0本程序要求输入一个字符串,然后将其中的小写字母改成大写字母,字符可能输入多行,当输入字符“?”时,默认字符输入结束,最后把结果输出到屏幕 中。注意:不要改动main函数,不能增加或删除行,也不能更改程序的结 构,错误的语句在/ / *error*的下面。试题程序:#include voidmain inti=O ;charstr12OJ ;coutMEnterastr
16、ingendwith? . endl ;/不不不小不小不不error不不不不不不不不cin . getline(str, 120);while(str)/ / */不不不不不不不不prrcr不不不不不不不不if(stri)=a)stri=stri-a + A ;i+ + ;coutstrendl ;return ;44 .使用VC+ +6 .0打开考生文件夹下的源程序文件1 .cpp,该程序运行时有错,请改正其中的错误,使程序正常运行,并使程序输出的结果为:sizeof(Sl)=5sizeof(s2)=10sizeof(s3)=l注意:不要改动main函数,不能增加或删除行,也不能更改程序的结
17、构,错误的语句在/ / *error*的下面。(1)不能删除assert ()语句。(2)只能修改后面的数字。提示:assert函数如果为假,则会产生一个中断异常。试题程序:#incl ude #include voidmain () char*sl=,abcM:/不不不不不不不不prrcr不不不不不不不不assert(sizeof(s 1 )=3): cout,sizeof(sl)=5endl ;chars210=,abH:assert(sizeof(s2)=2);cout,sizeof(s2)=10,endl ;chars3=23 :/如如点, /小小小小小小小小prrcr小小小小小小小不
18、assert(sizeof(s3)=4);coutsizeof(s3)= 1 uendl ;return ;45 .使用VC+6.。打开考生文件夹下的源程序文件1.cpp。本程序 要求输入一个字符串,然后将其中的小写字母改成大写字母,字符可 能输入多行,当输入字符“?”时,默认字符输入结束,最后把结果输出 到屏幕中。注意:不要改动main函数,不能增加或删除行,也不能更改程序的结 构,错误的语句在/ / *error*的下面。试题程序:#include voidmain inti=O;charstr 120J ;coutMEnterastringendwith?. Hendl;/小小小小小年小
19、小prrcr不不不不不不不不cin. getline(str, 120);/ */不不不不不不不不error不不不不不不不不while(str)/%1* *1* *1*1*1*2* *1*/不不不不不不不不prr()r不不不不不不不不if(stri)=a)stri=stri-a+A;i+ + ;)coutstrendl ;return;五、综合应用题(2题)46 .使用VC+6.。打开考生文件夹下的源程序文件3.cpp。其中定 义的类不完整,按要求完成下列操作,将类的定义补充完整。定义类的公有数据成员函数NO、Name32,其中NO是int型的数据,Name32为字符型。请在注释1后添加适当的
20、语句。(2)完成函数Set的定义,分别设置NO和Name的值,请在注释2后添 加适当的语句。完成函数print,请在注释3后添加适当的语句,输出结果如下:N0=12345Name=HelloWorld!添加默认构造函数,设置NO为0, Name为空,请在注释4后添加 适当的语句。注意:增加或者修改代码的位置已经用符号表示出来,请不要修改其 他的程序代码。试题程序:#includeclassTC (public:/f) ) 11f Tw! I/ *1* * * *1* *1 *!* 1*1* *1* *虫虫*1* * *1*f*! *T*X* f *T 1* *TW TW T No=no;for
21、(inti=0; strNameiJ!=O; i + + ) (Namei=strNamei;Nameli+l=O;voidprint ()/f1 ) 1 1t *t t t1/米字半*3”*半*TC ()/ / *4*)卜intmain ()(TCstu:stu. Set( 12345, HelloWorld!*); stu. print ();returnO:47 .(1)应添加“virtualvoidGetNamt!=0 ;。(2)应添加“constchar*GetName2”。(3)应添加“TC2(char*str)”(4)应添加“m_st巾=0 ;【解析】本题第1处要求“在类TC1中
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 2021 黑龙江省 鹤岗市 全国 计算机等级考试 C+ 语言程序设计 预测 试题 答案
限制150内