2023年安徽省蚌埠市全国计算机等级考试C++语言程序设计模拟考试(含答案).docx





《2023年安徽省蚌埠市全国计算机等级考试C++语言程序设计模拟考试(含答案).docx》由会员分享,可在线阅读,更多相关《2023年安徽省蚌埠市全国计算机等级考试C++语言程序设计模拟考试(含答案).docx(46页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、2023年安徽省蚌埠市全国计算机等级考试C+语言程序设计模拟考试(含答案)学校:班级:姓名:考号:一、1.选择题(10题)1.以下程序段的执行结果是()。#include Void main。int a, y; a=10;y=l do a+=2; y+=a; cout a = a My=H y 20) break; while(a = 14);A.a=12,y=12 a=14,y=16 a=16,y=20B.a=12,y=12 a=14,y=26C.a=12,y=12 a=14,y=26 a=14,y=44 D.a=12,y=122 .下列关于成员函数特征的描述中,错误的是()。A.成员函数一
2、定是内联函数B.成员函数可以重载C.成员函数可以设 置参数的默认值D.成员函数可以是静态的3 .下面这个程序的结果是 #include class A private : int a ; public : void seta( ) ; int geta( ) ; ; void A:seta( ) a = 1 ; int A:geta() return a ; class B private : int a ; public : void seta() ; int geta();); void B:seta() a=2 ; intB:geta() return a; class C : publ
3、ic A, public B private: int b ; public : void display() ; ; void C:display() int b=geta() ; cout b; void main() C c ; c.seta() ; c.display() ; A.l B.2 C.随机输出1或2 D.程序有错32 .若有以下程序:#include using namespace std;class Base ( public:void who()cout Base11 endl:);class Derived 1: public Base ( public:void w
4、ho() cout Derived1 who();return 0; )则该程序运行后的输出结果是【】。33 .在算法正确的前提下,评价一个算法的两个标准是【】。34 .需求分析的步骤是需求获取、需求描述、需求验证和【】。35 .每个以符号 开头的行,为编译预处理行。四、程序改错题(10题)36 .使用VC+6. 0打开考生文件夹下的源程序文件1.叩p。本程序 要求输入一个字符串,然后将其中的小写字母改成大写字母,字符可 能输入多行,当输入字符“?”时,默认字符输入结束,最后把结果输出 到屏幕中。注意:不要改动main函数,不能增加或删除行,也不能更改程序的结 构,错误的语句在/ / *err
5、or*的下面。试题程序:#include voidmain(inti=O;charstr 120;coutMEnterastringendwith?. endl;/不不不不不不不不prrcr不不予不不不苓不cin. getline(str, 120);while(str)/年不不不不不不小prrcr年亭寿寿寿寿不不if(stri)=a)stri=stri-a+A;i+ + ;)return;37 .使用VC+6. 0打开考生文件夹下的源程序文件1.cpp,该程序运行时有错误,请改正错误,使程序正常运行,并且要求最后一个catch必须抛出执行的任何异常。程序异常,输出信息为errorOERROR
6、注意:不要改动main函数,不能增加或删除行,也不能更改程序的结构,错误的语句在/ / *err()r*的下面。试题程序:#include1 1 1 1 1 /不不不不小不不小prrcr不不不不不不不不catch coutnERRORendl;returnO;38 .使用VC+6. 0打开考生文件夹下的源程序文件1.cpp,该程序运行时有错误,请改正错误,使程序正常运行,并且要求最后一个catch必须抛出执行的任何异常。程序异常,输出信息为error0ERROR注意:不要改动main函数,不能增加或删除行,也不能更改程序的结 构,错误的语句在/ / *error*的下面。试题程序:#inclu
7、deiostream. h) intmain try throw(nerrorH);)/ 不举*汴举举不pj*|*cr人catch(chars)(coutsendl ;1try(throw(int)0);catch(coutiendl ;1 try (throw(O);throwCerror*);/ * * */ *年*不不prrcr不、,.、,.、,.、catch cout,ERROR,endl;returnO:39 .使用VC+6. 0打开考生文件夹下的源程序文件1.叩p,该程序运行时有错。请改正程序中的错误,使程序输出的结果为1003732注意:错误的语句在/ / *error*的下面,
8、修改该语句即可。试题程序:#include/KM KM/ *5*5*5*5*r prmr不不不不不不voidmain/ * 不不 * * *prmr* * * * * *intm=0142:/小小小小小小prrcr不不不不不不intn=0X27:intq=32;coutm endl;cout n endl;cout q endl ;return;40 .使用VC+ + 6 .0打开考生文件夹下的源程序文件1 .cpp,该程序运行时有错,请改正其中的错误,使程序正常运行,输出的结果为Constructor, i=0,Destructor注意:错误的语句在/ / *error*的下面,修改该语句即
9、可。试题程序:#include(iostream . h) classTC inti ;public :TC ;voiddisplay ;TC ;I I * * * * * *eTor* * * * * *TC : TC cout,Constructor,H, i=0;)/ / * * 不* 汴ermr* * * * * *TC : displaytouti=,in, endl ;TC : TCCOUIDestructorendl :)voidmainTCa ;a . display ;41 .使用VC+ + 6 .0打开考生文件夹下的源程序文件1 .cpp,该程序运行有问题,请改正main函
10、数中的错误,使程序的输出结果为:number=l number=10 number=100注意:不要改动main函数,不能增加或删除行。也不能更改程序的结构,错误的语句在/ / *error*的下面。试题程序:#includeclassTC (public :TC(inti) number=i ;voidSetNumber(intm) number=m ;intGetNumberconst returnnumber ;voidPrintconst coutnumber=numberendl ;)private :intnumber ;voidmain/ / * * * * */ / * 举举
11、* *pji*cr* * *TCobjl ;objl . Print ;TCobj2;/ %1* 1* *1* *1* *1* 的2 /小小小小小小小年prrcr不不不不不不不不objl . number=10 ;I I *error*%()*TC . SetNumber(lOO);objl . Print ;42 .使用VC+6. 0打开考生文件夹下的源程序文件1. cpp,该程序运行时有错误,请改正程序中的错误。本程序要求实 现的功能为从键盘输入一个字符串,并将结果保存到文件1.txt中。 注意:不要改动main函数,不能增加或删除行,也不能更改程序的结 构,错误的语句在/ / *en*o
12、r*的下面试题程序:#include#include/年小不小不小小小errcr不不不不不不不不usingstd;voidWriteFile(char*s) (ofstreamout 1 ;outl. open(l. txt, binary|app);for(inti=0; si!=0; i + + )/KWKM/不不不不不不不不error不不不不不不予不outl. puts(si);outl. close;voidClearFile4 .下列叙述中,不属于软件需求规格说明书的作用的是A.便于用户、开发入员进行理解和交流B.反映出用户问题的结构,可以作为软件开发工作的基础和依据C.作为确认测试
13、和验收的依据D.便于开发入员进行需求分析5 .已知一棵二叉树前序遍历和中序遍历分别为ABDEGCFH和DBGEACHF,则该二叉树的后序遍历为()。A.GEDHFBCA B.DGEBHFCA C.ABCDEFGH D.ACBFEDHG6 .下面关于break语句的描述中,不正确的是()。A.break可以用于循环体内B.break语句可以在for循环语句中出现多次C.break语句可以在switch语句中出现多次D.break语句可用于if条件判断语句内7 .在表达式x-y中,”是作为非成员函数重载的运算符。若使用显式的 函数调用代替直接使用运算符这个表达式还可以表示为A.x . operat
14、or-(y)B.operator-(y, x)C.y operator-(x)D.operator-(x, y)8 .关于虚函数下面说的正确的是()。ofstreamout 1 ;outl. open(l. txt);outl. close; )intmain (charsf 10241;ClearFile;coutHpleaseinputastrin9:uendl;cin. getline(s, 1024);WriteFile(s);returnO; 143 .使用VC+ + 6 .0打开考生文件夹下的源程序文件1 .cpp0本程序要 求输入一个字符串,然后将其中的小写字母改成大写字母,字符
15、可能输 入多行,当输入字符时,默认字符输入结束,最后把结果输出到屏幕 中。注意:不要改动main函数,不能增加或删除行,也不能更改程序的结 构,错误的语句在/ / *errcr*的下面。试题程序:inti=O ;charstr 120;coutEnterastringendwith? . endl ;/t/ *i;i*i*r*r*r*r*r PITOI* 不不不不不不不不cin . getline(str, 120);while(str)/ / *1* 一4 !/小小*t*小prmr不不不不不不不不if(stri)=a)stri=stri-a + A ;i+ + ;coutstrendl ;r
16、eturn ;44 .使用VC+6. 0打开考生文件夹下的源程序文件1.cpp,该程序运行有问题,请改正main函数中的错误,使程序的输出结果为:number=lnumber=10number = 100注意:不要改动main函数,不能增加或删除行。也不能更改程序的结构,错误的语句在/ / *errc)r*的下面。试题程序:classTC public:TC(inti) number= i;)voidSetNumber(intm) number二 m;)intGetNumberconst returnnumber;voidPrintconst coutnnumber=numberendl;pr
17、ivate:intnumber;);voidmain/MM/ * errcr不予予不不不不不TCobjl;objl. Print;TCobj2(3);/ *! *! *! *&/不不不不不不不不prrcr不不不不不不不不/ / * * Cff 0f *%0*TC. SetNumber( 100);objl. Print;obj2. Print;45 .使用VC+ + 6 . 0打开考生文件夹下的源程序文件I . cpp,该程序运行时有错误,请改正程序中的错误。本程序要求实现 的功能为从键盘输入一个字符串,并将结果保存到文件1 .txt中。注意:不要改动main函数,不能增加或删除行,也不能更改
18、程序的结 构,错误的语句在* error* * * * * * 的下面。试题程序:#include#include usingstd ;voidWriteFile(char*s) (ofstreamout 1 ;erroroutl . open(l . txt, binary|app);for(inti=0 ; si!=0 ; i + + )outl . puts(sij);outl . close ; voidClearFile(ofstreamoutl ;outl . open(l . txt);outl . close ;) intmain(chars1024;ClearFile ;co
19、ut”pleaseinputastrin9 : *endl ;cin . getline(s, 1024);WriteFile(s);returnO ; )五、综合应用题(2题)46 .使用VC+6.。打开考生文件夹下的源程序文件3. cpp,其中定义了类A、A1和A2,其中A1类由A类公有派生,A2类由A1类公 有派生。(1)定义类A的构造函数,该构造函数有一个整型的参数x,在构造函 数中请将x赋值给数据成员a。请在注释“/ / *1*之 后添加适当的语句。定义类A1的构造函数,该构造函数有两个整型的参数x和y,在构 造函数中请将x赋值给数据成员b,将y作为基类A构造函数的参数 值传人。请在
20、注释“/ / *2*之后添加适当的语句。定义类A2的构造函数,该构造函数有3个整型的参数x, y和z, 在构造函数中请将x赋值给数据成员C,将y和z分别赋值给基类A1 构造函数的参数x和y。请在注释“ / / *3*”之后添加 适当的语句。(4)完成类A2的成员函数show的定义,该函数调用基类成员函数,输 出基类数据成员a和b及类A2自身的数据成员C的值,上述3个值 在输出时以空格隔开。请在注释“/ / *4*”之后添加适 当的语句。程序输出结果如下:73 738 注意:除在指定的位置添加语句之外,请不要改动程序的其他部分。试题程序:#includeclassA(inta;public:*
21、I * intgetareturna; ;classAI : publicA (intb;public:/ 1* *1* 1* 1* !* !* 1*intgetbreturnb; );classA2: publicA 1 (intC;public:voidshow/ I *4*);voidmainA2a(8. 3. 7):couta. getaendl :couta. getbendl :a. show;47 .使用VC+6.。打开源程序文件3. cpp。其中类TC用于把文件 输出到屏幕,然后进行文件的分割。分割的方法如下:第一个文件的 大小是文件的前一半,另外一个文件的大小是剩余部分。此程
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 2023 安徽省 蚌埠市 全国 计算机等级考试 C+ 语言程序设计 模拟考试 答案

限制150内