2021年辽宁省沈阳市全国计算机等级考试C++语言程序设计模拟考试(含答案).docx
《2021年辽宁省沈阳市全国计算机等级考试C++语言程序设计模拟考试(含答案).docx》由会员分享,可在线阅读,更多相关《2021年辽宁省沈阳市全国计算机等级考试C++语言程序设计模拟考试(含答案).docx(42页珍藏版)》请在课桌文档上搜索。
1、2021年辽宁省沈阳市全国计算机等级考试C+语言程序设计模拟考试(含答案)学校:班级:姓名:考号:一、L选择题(10题)1.关于函数的返回值,正确的是()。A.由return语句返回时,只带回一值,其类型在函数定义时确定B.其类型由调用表达式决定C.函数可以没有返回值,这时在函数定义中,函数的类型说明就没必要TD.函数调用就要有返回值,否则调用就没有意义了2“年龄在18-25之间”这种约束是属于数据库当中的A.原子性措施B.一致性措施C.完整性措施D.安全性措施3 .假定TeStCIaSS为一个类,则该类的拷贝构造函数的声明语句为()。A.TestClass(TestClassx)B.Test
2、Class(TestClassx)C.TestClass(TestClass*x)D.TestClass(TestClass&x)4 .下面程序应能对两个整型变量的值进行交换。以下正确的说法是#includevoidswap(intp,intq)intt;t=p;p=q;q=t;)voidmain()inta=10,b=20 ;cout a n , b ;swap(&a, &b);COUta,nb;)A.该程序完全正确B.该程序有错,只要将语句swap(&a,&b);中的参数改为a,b即可C.该程序有错,只要将swap()函数中的形参P和q以及t均定义为指针(执行语句不变)即可D.以上说法都不
3、对5 .在C+语言中函数返回值的类型是由()决定的。A.调用该函数时系统临时B.return语句中的表达式类型C.定义该函数时所指定的函数类型D.调用该函数时的主调函数类型6 .下列语句中不是死循环的是A.inti=10;while(l)i-;if(i=1)break;B.for(inti=l;i=0);D.inti=l;for(;)i=i+1;7 .下面描述中正确的是oA.virtual可以用于声明虚函数8 .含有纯虚函数的类不可以用来创建对象C.即使基类的构造函数没有参数,派生类也必须建立构造函数D.静态数据成员可以通过成员初始化列表来初始化8 .下列运算符中,不能重载的是A.?:B.+C
4、.-D.=9 .在inta=10,*P=&a;”语句中,P的值是()。A.10B.变量P的地址C.变量a的地址D.随机数10 .关于关键字class和typename,下列表述中正确的是A.程序中的typename都可以替换为classB.程序中的class都可以替换为typenameC.在模板形参表中只能用typename来声明参数的类型D.在模板形参表中只能用class或typename来声明参数的类型二、单选题(13题)11 .对于长度为n的线性表,在最坏情况下,下列各种排序法所对应的比较次数中正确韵是()。A.冒泡排序为n/2B.冒泡排序为nC.快速排序为nD.快速排序为n(n-1)/
5、212 .下列关于继承方式的描述中,错误的是()。A.如果不显式地指定继承方式,默认的继承方式是私有(PriVate)B.采用公有继承方式时,基类中的公有成员在派生类中仍然是公有成员C.采用保护继承方式时,基类中的保护成员在派生类中仍然是保护成员D.采用私有继承方式时,基类中的私有成员在派生类中仍然是私有成员13 .下列描述中,不属于面向对象思想主要特征的是oA.封装性B.跨平台性C继承性D.多态性14 .下述关于数据库系统的叙述中,正确的是()。A.数据库系统减少了数据冗余B.数据库系统避免了一切冗余C.数据库系统中数据的一致性是指数据类型一致D.数据库系统比文件系统能管理更多的数据15 .
6、有如下的程序:#includecstring.h)#ingcludeiostream.h)usingnamespacestd;ClassMyStringpublic:MyString(constcharts);MyString()deleteJdata;protected:unsignedIen;char*data;MyString:MyString(constchar*S)1A.构造函数的实参不允许是本类的对象B.没有定义实现深层复制(深拷贝)的复制构造函数C.构造对象a时实参与形参类型不符D.系统不能生成默认的复制构造函数16.有如下程序:#includeusingnamespacestd
7、;classAAintk;protected:intn;voidsetK(intk)this-k=k;)public:voidsetN(intn)this-n=n;);classBB:publicAA*类体略*;intmain()BBx;x.n=l;/lx.setN(2);/2x.k=3;/3x.setK(4);/4return0;)在标注号码的四条语句中正确的是OA.lB.2C.3D.417 .对长度为n的线性表进行顺序查找,在最坏情况下所需要的比较次数为()oA.log2nB.n/2C.nD.n+118 .按照“先进先出”组织数据的数据结构是()。A.队列B.栈C.双向链表D.二叉树19
8、.关于关键字CIaSS和typename,下列表述中正确的是()。A.程序中的typename都可以替换为classB.程序中的class都可以替换为typenameC.在模板形参表中只能用ypename来声明参数的类型D.在模板形参表中只能用class或typenanle来声明参数的类型20 .有如下函数定义:voidfunC(inta,int&B.a+;b+;若执行代码段:intx=0,Y=I;funC(X,Y);则变量X和y的值分别是()。A.0和1B.1和1C.0和2D.1和221 .一个教师可讲授多门课程,一门课程可由多个教师讲授。则实体教师和课程间的联系是()。A.l:1联系B.l
9、:m联系C.m1联系D.m:n联系22 .关于类和对象描述错误的是A.对象(ObieCt)是现实世界中的客观事物,对象具有确定的属性B.类是具有相同属性和行为的一组对象的集合C.对象是类的抽象,类是对象的实例D.类是对象的抽象,对象是类的实例23 .在三级模式之间引入两层映像,其主要功能之一是()oA.使数据与程序具有较高的独立性B.使系统具有较高的通道能力C.保持数据与程序的一致性D.提高存储空间的利用率三、2.填空题(12题)24 .若结点的存储地址与其关键字之间存在某种映射关系,则称这种存储结构为【】。25 .下列程序的输出结果是【】。#includeusingnamespacestd;
10、intmain()(intdata=l;int&r=data;data+=5;r+=5;coutdataendl;returnO;)26 .类test的析构函数是o27 .指针变量所保存的不是一般的数据值,而是程序中另一个对象的28 .若有以下程序:#includeusingnamespacestd;classTestClass1(public:TestClasslO(X=0;intx;);classTestClass2:virtualpublicTestClass1(public:TestClass2()(x=10;);classTestClass3:virtualpublicTestCla
11、ss1(public:TestCIass3()(x=20;);classTestClass4:publicTestClass2,protectedTestClass3();intmain()(TestClass4obj;coutobj.xendl;return0:)该程序运行后的输出结果是O29 .成员函数中不能直接引用类中说明的非静态成员。30 .有如下关系:学生(学号,姓名,性别,专业号,年龄),将属性年龄的取值范围定义在0-120之间符合【】。31 .为解决在多重继承环境中因公共基类带来的二义性问题,C+语言提供了【】机制。32 .使用如setw()的操纵符对数据进行格式输出时,应包含【
12、】文件。33 .用来派生新类的类称为,而派生出的新类称为它的子类或派生类。34 .类模板不同于函数模板,类模板只可用【】型参数。35 .下列程序的输出结果是【】。#includeusingnamespacestd;classbasepublic:intn;base(ihtx)n=x;virtualvoidset(intm)n=m;coutn;);classderiveA:publicbasepublic:deriveA(intx):base(x)voidset(intm)n+=m;coutn;:classderiveBpublicbasepublic:deriveB(intx):base(x)
13、voidset(intm)n+=m;coutnset(l);pbase=&d2;phase-set(2);returnO;四、程序改错题(10题)36 .使用VC+6.。打开考生文件夹下的源程序文件Lcpp。本程序要求输入一个字符串,然后将其中的小写字母改成大写字母,字符可能输入多行,当输入字符时,默认字符输入结束,最后把结果输出到屏幕中。注意:不要改动main函数,不能增加或删除行,也不能更改程序的结构,错误的语句在/*e*or*的下面。试题程序:includevoidmain(inti=O;charstr120;coutEnterastringendwith?.endl;I/*error*
14、cin.getline(str,120);I/*error*while(str)/*error*if(stri)=a)stri=stri-a+A;i;)coutstrendl;return;)37 .使用VC+60打开考生文件夹下的源程序文件1.cpp,该程序运行时有错,请改正其中的错误,使程序正常运行,输出的结果为Constructor,i=0,Destructor注意:错误的语句在/*erro*的下面,修改该语句即可。试题程序:#include(iostream.h)classTC(inti;public:TC;voiddisplay;TC;);/*error*TC:TCCOUt”Cons
15、tructor。,n;i=0;)II*error*TC:display(tout,i=in,endl;)II*error*TC:TC(COUI,Destructorendl:)voidmain(TCa;a.display;38 .使用VC+6.O打开考生文件夹下的源程序文件1.cpp,该程序运行时有错误,请改正程序中的错误。本程序要求实现的功能为从键盘输入一个字符串,并将结果保存到文件1txt中。注意:不要改动main函数,不能增加或删除行,也不能更改程序的结构,错误的语句在I!*error*卜试题程序:#include#includeII*e*or*usingstd;voidWriteFil
16、e(char*s)(Ofstreamoutl;II*e*or*outl.open(1.txtu,binaryapp);for(inti=0;si!=O;i+)(II*ej*por*outl.puts(si);)outl.close;)VoidClearFile(Ofstreamoutl;outl.open(ul.txtu);outl.close;)intmain(chars1024;ClearFile;cin.getline(s,1024);WriteFile(s);return;)39 .使用VC+6.0打开考生文件夹下的源程序文件1.cpp,该程序运行时有错误,请改正错误,使程序正常运行,
17、并且要求最后一个catch必须抛出执行的任何异常。程序异常,输出信息为errorOERROR注意:不要改动main函数,不能增加或删除行,也不能更改程序的结构,错误的语句在/*error*的下面。试题程序:#includeiostream.h)intmain(try(throw(error);)I/*error*catch(chars)(coutsendl;trythrow(int)0);/*error*catch(coutiendh)try(throw(O);throw(error);)I/*error*catch(coutERRORendl;)returnO;40 .使用VC+6.。打开考
18、生文件夹下的源程序文件1.cpp,该程序运行时有错误,请改正程序中的错误。本程序要求实现的功能为从键盘输入一个字符串,并将结果保存到文件1txt中。注意:不要改动main函数,不能增加或删除行,也不能更改程序的结构,错误的语句在/!*error*1Rj。试题程序:#include#includeI/*error*usingstd;voidWriteFile(char*s)(Ofstreamoutl;I/*error*outl.open(,1.txt,binaryapp);for(inti=0;si!=O;i+)(/*error*outl.puts(si);)outl.close;)VoidCl
19、earFile(Ofstreamoutl;outl.open(1.txtu);outl.close;)intmain(chars1024;ClearFile;cin.getline(s,1024);WriteFile(三);returnO;41.使用VC+6.。打开考生文件夹下的源程序文件1cpp,该程序运行有问题,请改正main函数中的错误,使程序的输出结果为:number=1number=10number=100注意:不要改动main函数,不能增加或删除行。也不能更改程序的结构,错误的语句在/*eror*的下面。试题程序:#includeclassTC(public:TC(inti)(nu
20、mber=i;)voidSetNumber(intm)(number=m;)intGetNumberconstreturnnumber;VoidPrintconstcoutnumber=numberendh)private:intnumber;voidmain(I/*error*TCobjhobjl.Print;TCobj2(3);I/*error*objl.number=10;/*errc)r*%0*TC.SetNumber(l00);objl.Print;obj2.Print;)42 .使用VC+6.。打开考生文件夹下的源程序文件1(运行时有错。请改正程序中的错误,使程序输出的结果为100
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 2021 辽宁省 沈阳市 全国 计算机等级考试 C+ 语言程序设计 模拟考试 答案
链接地址:https://www.desk33.com/p-965105.html