2022年辽宁省锦州市全国计算机等级考试C++语言程序设计真题(含答案).docx
《2022年辽宁省锦州市全国计算机等级考试C++语言程序设计真题(含答案).docx》由会员分享,可在线阅读,更多相关《2022年辽宁省锦州市全国计算机等级考试C++语言程序设计真题(含答案).docx(42页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、2022年辽宁省锦州市全国计算机等级考试C+语言程序设计真题(含答案)学校:班级:姓名:考号:一、1.选择题(10题)1.表达式10 5 &6%3的值是A.-l B.非零值 2.有以下 程 序union unsigned int n;c;ul;ul.c =A;endl;执行后输出结果是A.产生语法错B.随机值main() unsigned char cout ul.n 3 .当输入“Thank you”时下列程序的输出结果为()。include #include void main() char line80;cin.getline(line,sizeof(80), k) ; cout lin
2、e ; A.Tha B.Thank you C.Thank D.以上结果都不对4 .对关系S和R进行集合运算,结果中既包含S中的所有元组也包含R中的所有元组,这样的集合运算称为()oA.并运算B.交运算C.差运算D.积运算5 .将以下程序写成三目运算表达式是()。if(x y)?x:yclass Apublic :static int x ;A(inty)cout x+y ; );int A : x=2 ; void main()A a(5); )四、程序改错题(10题)36 .使用VC+6. 0打开考生文件夹下的源程序文件1. cpp,该程序 运行时有错,请改正其中的错误,使程序正常运行,输
3、出的结果为Constructor, i=0,Destructor注意:错误的语句在/ / *error*的下面,修改该语句即 可。试题程序:#include(iostream. h)classTC(inti;public:TC;voiddisplay;TC;error*1*1 *1 *! L rj*TC:TCcoutnConstructornn, n ;i=0;*1 *1y*error*1 *1 !*J*TC: display(tout *1 *1 *1 *1*y*rj* *y*error*1* *X* *1 *4* *1* *1*y*TC:TCCOUInDestructornendl :)
4、voidmain(TCa;a. display; )该程序37 .使用VC+6. 0打开考生文件夹下的源程序文件L cpp, 运行时有错。请改正程序中的错误,使程序输出的结果为1003732注意:错误的语句在/ / *error*的下面,修改该语句即可。试题程序:#includek1k! 7,k1k!k! 7,7,1*不不小小不不error不不不不小不voidmainsix不不不不不不enor不不不不不不intm=0142:intn=0X27 :intq=32;cout mendl;cout n endl;cout q endl;return;38 .使用VC+6. 0打开考生文件夹下的源程序
5、文件1.cpp。本程序要求输入一个字符串,然后将其中的小写字母改成大写字母,字符可能输入多行,当输入字符“?”时,默认字符输入结束,最后把结果输出 到屏幕中。注意:不要改动main函数,不能增加或删除行,也不能更改程序的结 构,错误的语句在/ / *error*的下面。试题程序:#include voidmain inti=O;charstr120;coutnEnterastringendwith?nendl;*1* *1*1* *J *X* *JU *Jk!不不不不不不不不enor不不不不不不不不cin. getline(str, 120);while(str)vt* vt#.1*不不不不不
6、不不不error不不不不不个小小stri=stri-a+A;i+ + ;coutstrendl ;return ;39 .使用VC + +6 .0打开考生文件夹下的源程序文件1.cpp,该程序运行有问题,请改正main函数中的错误,使程序的输出结果为:number=l number=10number= 100注意:不要改动main函数,不能增加或删除行。也不能更改程序的结构,错误的语句在/ / *errc)r*的下面。试题程序:#includeclassTC (public :TC(inti) (number=i ;)voidSetNumber(intm)(number=m ;)intGetN
7、umberconst(returnnumber ;)voidPrintconst (coutnnumber= Hnumberendl ;)private :intnumber ;);voidmain*1* *1* *1* T r*errorTCobjl ;objl . Print ;TCobj2(3);vl*vl vL不*r*个个个.、个个nor个个个不不小个个objl . number= 10 ;I !* enor* * *TC . SetNumber(lOO);objl . Print ;obj2 . Print ; 40 .使用VC+ +6 .。打开考生文件夹下的源程序文件1 . cpp
8、,该程序运行时有错误,请改正程序中的错误。本程序要求实现 的功能为从键盘输入一个字符串,并将结果保存到文件1 . txt中。注意:不要改动main函数,不能增加或删除行,也不能更改程序的结 构,错误的语句在* eiror * * * * * * 的下面。试题程序:#include#includevt* vt*个不个不不.、个不nor个个个个不个个个usingstd ;voidWriteFile(chars) (ofstreamout 1 ;* error* * * * * * * *outl . open(Hl .txt, binary|app);for(inti=0 ; si!=0 ; i
9、+ +)* enor* *outl.puts(si);outl.close ;voidClearFile ofstreamout 1 ;outl . open(ul . txt);outl . close ; intmain(chars 1024;ClearFile ;coutnpleaseinputastrin9 :Hendl ;cin . getline(s, 1024);WriteFile(s);returnO ; )41 .使用VC + + 6 .0打开考生文件夹下的源程序文件1 .cpp。本程序要 求输入一个字符串,然后将其中的小写字母改成大写字母,字符可能输 入多行,当输入字符“?
10、”时,默认字符输入结束,最后把结果输出到屏幕 中。注意:不要改动main函数,不能增加或删除行,也不能更改程序的结 构,错误的语句在/ / *enor*的下面。试题程序:#include voidmain(inti=O ;charstr120;coutHEnterastringendwith? . nendl ; /vt* vt*vt* vt# kL# vt* kL* kJ* vt*/不不不不不不不不error不不不下不平不不cin . getline(str, 120);/7 7,/不不不不不不不不error不个个不不干不小while(str) (/7,7 7,7 7,7 7”/不不不不不不
11、不不error不不不不不不不不if(stri)=a)stri=stri-a + A ;i + + ;) coutstrendl ;return ;42 .使用VC+6.。打开考生文件夹下的源程序文件1.cpp,该程序 运行时有错误,请改正错误,使程序正常运行,并且要求最后一个catch必须抛出执行的任何异常。程序异常,输出信息为error0 ERROR注意:不要改动main函数,不能增加或删除行,也不能更改程序的结 构,错误的语句在/ / *error*的下面。试题程序:#includeiostream h) intmain throw(Herrorn);catch(chars) coutse
12、ndl;) try throw(int)0);7, 个个个个个个个个rror不不不个个不不catch coutiendl;) try(throw(O);throw(nerrorn);个个不不不不不个errore个个个个个个个个catch(coutn ERRORn endl ;)returnO ;)43 .使用VC + +6.0打开考生文件夹下的源程序文件1.cpp,该程序运行时有错,请改正其中的错误,使程序正常运行,输出的结果为Constructor, i=0,Destructor注意:错误的语句在/ / *error*的下面,修改该语句即可。试题程序:#include(iostream .
13、h)classTC (inti ;public :TC ;B.min=(x y)?x:yC.min=(x y)x:yD.min=(x y)?x,y6 .要实现多态性,派生类中的虚函数必须()。A.函数名、参数及返回值必须与基类中对应的虚函数完全相同B.参数个数不必与基类中对应的虚函数的函数名完全相同C.参数类型不必与基类中对应的虚函数的函数名完全相同D.返回值类型不必与基类中对应的虚函数的函数名完全相同7 .下面表示纯虚函数的成员函数是()。A.virtual int v(int);8 .void v(int) =0;C.virtual void v() =0;D.virtual void v
14、(int) 8 .下列叙述中正确的是()0A.一个算法的空间复杂度大,则其时间复杂度必定大B.一个算法的空间复杂度大,则其时间复杂度必定小C.一个算法的时间复杂度大,则其空间复杂度必定小D.上述三种说法都不对9 .假定MyClass为一个类,则该类的拷贝初始化构造函数的声明语句 为()voiddisplay ;TC ;;I i *eiror*TC : TC( coutnConstructor i=0 ;)I i *error*TC : display( touti=i, endl ;I i *error*TC : TC(COUIDestructorendl . voidmain(TCa ;a
15、- display ;44.使用VC+6. 0打开考生文件夹下的源程序文件1. cpp,该程序运行时有错误,请改正程序中的错误。本程序要求实 现的功能为从键盘输入一个字符串,并将结果保存到文件1. txt中。 注意:不要改动main函数,不能增加或删除行,也不能更改程序的结 构,错误的语句在/ / *errc)r*的下面。试题程序:#include#include/ / *eiror*usingstd;voidWriteFile(char*s) (ofstreamout 1 ;/ / *error*utl. open(nl. txtn, binary|app);for(inti=0; si!=
16、0; i+) (/ / *eiror*outl. puts(si);)outl. close;)voidClearFile(ofstreamout 1 ;outl. open(Hl. txt);outl. close;) intmain (chars 1024;ClearFile;coutnpleaseinputastrin9 :nendl;cin. getline(s, 1024);WriteFile(s);returnO ; )45 .使用VC+ +6 .0打开考生文件夹下的源程序文件1 .cpp,该程序运 行时有错,请改正其中的错误,使程序正常运行,并使程序输出的结果 为:sizeof(
17、Sl)=5 sizeof(s2)=10sizeof(s3)=l注意:不要改动main函数,不能增加或删除行,也不能更改程序的结 构,错误的语句在/ / *errc)r*的下面。不能删除assert ()语句。只能修改后面的数字。提示:assert函数如果为假,则会产生一个中断异常。试题程序:#include #includevoidmain ()chartsl=nabcn:,r7 4、,R 、error*1 *1T T 、彳、j、 、/、assert(sizeof(sl )=3): coutnsizeof(sl)=5nendl ;chars210=nabn:k1 kJ 7,s.t 7 1* 1
18、kI 7, 个个个不不不个个nor个个个个个个个个assert(sizeof(s2)=2);coutnsizeof(s2)=10nendl ;chars3=23 : assert(sizeof(s3)=4);sl si*、rl *rerrorcoutnsizeof(s3)=lnendl ;return ; )五、综合应用题(2题)46 .使用VC+6. 0打开考生文件夹下的源程序文件3. cpp,其中定 义了类BA、PA1和PA2,其中PA1类由BA类公有派生,PA2类由 PA1类公有派生。上述3个类的定义并不完整,请按要求完成下列操 作,将程序补充完整。程序输出结果如下:1051057定义类
19、BA的构造函数,该构造函数有一个整型的参数m,在构造 函数中将m赋值给数据成员a。请在注释1之后添加适当的语句。定义类PA1的构造函数,该构造函数有两个整型的参数m和n,在 构造函数中将m赋值给数据成员b,将n作为基类BA构造函数的参 数值传人。请在注释2之后添加适当的语句。(3)定义类PA2的构造函数,该构造函数有3个整型的参数m、n和 k,在构造函数中请将m赋值给数据成员c,将n和k分别赋值给基类 PA1构造函数的参数m和no请在注释3之后添加适当的语句。(4)完成类PA2的成员函数show的定义,该函数调用基类成员函数, 输出基类私有成员a、b及类PA2自身的数据成员C的值,上述3个 值
20、在输出时用空格隔开。请在注释4之后添加适当的语句。注意:除在指定位置添加语句之外,请不要改动程序中的其他内容。 试题程序:#include(iostream. hclassBA(inta;public:intgetareturna; ;classPAl: publicBAintb;public:/*J *JU *j/、 J rjintgetb returnb ; );classPA2 : publicPAl (intC;public:/ vt 7 7*vt k!k! vt/r7 彳、J、rj、T*、voidshowI I *4*;voidmain(PA2a(7, 5, 10);couta .
21、getaendl ;couta . getbendl ;a. show; )47 .使用VC+6.。打开考生文件夹下的源程序文件3. cpp。其中定 义的类不完整,按要求完成下列操作,将类的定义补充完整。定义类的公有数据成员函数NO、Name32,其中NO是血型的数据,Name32为字符型。请在注释1后添加适当的语句。(2)完成函数Set的定义,分别设置NO和Name的值,请在注释2后添 加适当的语句。完成函数print,请在注释3后添加适当的语句,输出结果如下:N0=12345Name=HelloWorld!(4)添加默认构造函数,设置NO为0, Name为空,请在注释4后添加 适当的语句。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 2022 辽宁省 锦州市 全国 计算机等级考试 C+ 语言程序设计 答案
限制150内