计算机二级(C++)笔试37_第1页
计算机二级(C++)笔试37_第2页
计算机二级(C++)笔试37_第3页
计算机二级(C++)笔试37_第4页
计算机二级(C++)笔试37_第5页
已阅读5页,还剩12页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

[模拟]计算机二级(C++)笔试37一、选择题(每小题2分,共70分)下列各题[A]、[B]、[C]、[D]四个选项中,只有一个选项是正确的。第1题:下面关于成员函数重载运算符和友元函数重载运算符相同的是成员函数和友元函数可重载的运算符是不相同的成员函数和友元函数重载运算符时都需要用到this指针成员函数和友元函数重载运算符时都需要声明为公有的成员函数和友元函数重载运算符时的参数町能是相同的参考答案:A答案解析::考查C++语言中操作符重载中成员函数重载和友元函数重载的不同。【解题要点】成员函数和友元函数可重载的运算符有些相同的,有些是不同的,友元函数没有this指针,二者重载相同运算符时的参数肯定是不同的,成员函数重载运算符时都必须声明为公有的。【考点链接】友元函数的声明关健字是friend。第2题:C++语言是以哪种语言为基础逐渐发展演变而成的一种程序设计语言ASPCVBJava参考答案:B答案解析::C++语言是对C语言进行了扩充,继承了它的语法,并增加了面向对象的设计方法。第3题:NULL是指0空格未知的值或无任何值空字符串参考答案:C答案解析::此题属于记忆性的题目,NULL是指未知的值或无任何值。第4题:已知数据表A中每个元素距其最终位置不远,为节省时间,应采用的算法是堆排序直接插入排序快速排序直接选择排序参考答案:B答案解析::当数据表A中每个元素距其最终位置不远,说明数据表A按关键字值基本有序,在待排序序列基本有序的情况下,采用插入排序所用时间最少,故答案为选项[B].。第5题:如果表达式++x/y中,++是作为友元函数重载的,/是作为成员函数重载的,则该表达式还可为(operator++(x)).operator/(y)(operator++(0)).operator/(y)operator/((operator++(x,0)),y)operator/((operator++(0)),y)参考答案:A答案解析::C++中用成员函数重载++x为:x.operator++(),用友元函数重载++x为:operator++(x),用成员函数重载x/y为:x.operator/(y),用友元函数重载x/y为:operator/(x,y)。第6题:输出的是1输出的是1和-2输出的是3和0是死循环参考答案:B答案解析::do-while语句的一般格式为do循环体语句while(表达式);,先执行循环体语句一次,再判断表达式的值,若为真则继续执行循环,否则终止循环。本题中,先执行x=x-2,即为1。判断表达式的值,!(--x)为真,x=0,继续循环。再次执行循环体语句后,x=-2,此时表达式的值为0,结束循环。第7题:下面的哪个选项不能作为函数的返回类型?voidintnewlong参考答案:C答案解析::new是动态申请内存空间时使用的关键字,不能作为函数的返回类型,选项[A].为无返回值,选项(B)为返回整型,选项(D)为返回长整型。NULL第8题:8998程序有错误99参考答案:A答案解析::考查交换两整数的方法。【解题要点】两数只在函数change内被使用,函数调用完后该内存被释放,因此没有交换两数。【考点链接】交换两个数的方法简单说有两种一是使用指针,二是用引用。第9题:TOC\o"1-5"\h\z121122112222参考答案:B答案解析::C++语言中全局变量是任何函数都可以改变的量,静态变量的有效范围在定义它的类中,而普通的变量的有效性只在使用它的函数中,在本题中c为全局变量,b为静态变量,a为普通变量,b和c在类A的对象al和a2中都自口1。所以b,c为2,a为1。第10题:TOC\o"1-5"\h\z-112编译出错,无法运行参考答案:A答案解析::本题的函数是根据a和b的值来给c赋值。第11题:下列叙述中,不属于软件需求规格说明书的作用的是便于用户、开发人员进行理解和交流反映出用户问题的结构,可以作为软件开发工作的基础和依据作为确认测试和验收的依据便于开发人员进行需求分析参考答案:D答案解析::软件需求规格说明书(SRS,SoftwareRequirementSpecificafon)是需求分析阶段的最后成果,是软件开发中的重要文档之一。它有以下几个方面的作用:①便于用户、开发人员进行理解和交流;②反映出用户问题的结构,可以作为软件开发工作的基础和依据;③作为确认测试和验收的依据。第12题:类的析构函数的作用是一般成员函数的初始化类的初始化对象的初始化删除类创建的对象参考答案:D答案解析::析构函数就是用来释放对象的,它的调用完成之后,对象也就消失了,相应的内存空间也被释放了。第13题:在设计程序时,应采纳的原则之一是不限制goto语句的使用减少或取消注解行程序越短越好程序结构应有助于读者理解参考答案:D答案解析::滥用goto浯句将使程序流程无规律,可读性差,因此选项[A].不选;注解行有利于对程序的理解,不应减少或取消,选项[B].也不选;程序的长短要依照实际情况而论,而不是越短越好,选项[C].也不选。第14题:关于虚函数下面说的正确的是若在重定义虚函数时使用了virtual,则该重定义函数还是虚函数虚函数不能声明为友元子类必须重定义父类的虚函数虚函数不能是static的参考答案:D答案解析::虚函数一定不能定义为静态的。虚函数可以声明为友元,子类也不是必须重定义父类的虚函数,若在重定义虚函数时使用了virtual,则该重定义函数不一定还是虚函数。第15题:以下各选项组中,均是C++语言关键字的组是publicoperatorthisshodstringstaticitwhile>=privatecoutprintf参考答案:A答案解析::关键字是系统已预定义的单词,在程序中有不同的用途,考生应该熟记。第16题:在类的定义中,用于为对象分配内存空间,对类的数据成员进行初始化并执行其他内部管理操作的函数是友元函数虚函数构造函数析构函数参考答案:C答案解析::构造函数在创建对象时系统自动调用,其功能是使用给定的值将对象初始化。第17题:下面关于C++语言变量的叙述错误的是C++语言中变量分为auto,static,extem和register四种存储类型自动变量和外部变量的作用域为整个程序内部静态变量的作用域是定义它的函数外部静态变量的作用域是定义它的文件参考答案:B答案解析::自动变量是函数体或分程序内定义的变量,它的作用域在所定义的函数体内或分程序体内。第18题:下列描述中哪个是正确的?派生类构造函数中没有调用父类构造函数则没有对父类初始化子类构造函数不能是内联函数派生类构造函数中可以对父类数据成员赋值构造函数的返回值为void类型参考答案:C答案解析::C++语言中继承中的赋值问题。【解题要点】C++语言中基类的构造函数是可以被派生类继承并赋值的。【考点链接】构造函数和析构函数均无返回值。第19题:不定值TOC\o"1-5"\h\z333010参考答案:A答案解析::考查C++语言中数组初始化问题。【解题要点】如果定义数组时没有进行初始化,则其各个成员的值不确定。【考点链接】使用数组时应先赋初值。第20题:在软件生产过程中,需求信息的给出是程序员项目管理者软件分析设计人员软件用户参考答案:D答案解析::软件需求是指用户对目标软件系统在功能、行为、性能、设计约束等方面的期望。第21题:树是结点的集合,它的根结点数目是有且只有11或多于10或1至少2参考答案:A答案解析::树是一个或多个结点组成的有限集合,其中一个特定的结点称为根,其余结点分为若干个不相交的集合。每个集合同时又是一棵树。树有且只有1个根结点。第22题:已知二叉树后序遍历序列是dabec,中序遍历序列是debac,它的前序遍历序列是acbeddecabdeabccedba参考答案:D答案解析::依据后序遍历序列可确定根结点为c;再依据中序遍历序列可知其左子树由deba构成,右子树为空;又由左子树的后序遍历序列可知其根结点为e,由中序遍历序列可知其左子树为d,右子树由ba构成,如下图所示。求得该二叉树的前序遍历序列为选项[D].。[*]第23题11122122参考答案:C答案解析::本题考查考生对拷贝构造函数的掌握。因为++运算是右结合的,所以在使用a对b赋值时,b的num变为1而a的num变为2(先赋值再自加)。第24题:下列不属于软件调试技术的是强行排错法集成测试法回溯法原因排除法参考答案:B答案解析::掌握软件调试技术的方法、【解题要点】调试的关键在于推断程序内部的错误位置及原因。主要的调试方法有强行排错法、回溯法和原因排除法。【考点链接】软件调试的各种方法及各种方法的区别。第25题:下面不属于软件设计原则的是抽象模块化自底向上信息隐蔽参考答案:C答案解析::软件设计遵循软件工程的基本目标和原则,建立了适用于在软件设计中应该遵循的基本原理和与软件设计有关的概念,它们是抽象、模块化、信息隐蔽和数据独立性。自底向上是集成测试中增量测试的一种。第26题:对于模板定义关键字class和typename说法不正确的是程序中的class并不能都替换为typenameclass和typename都可互相替换程序中的typename都能替换为class程序中的部分class可以替换为typename参考答案:B答案解析::在C++程序中的typename是都可以替换为class的,但class不能都替换为typename。第27题:TOC\o"1-5"\h\z1234132413423142参考答案:C答案解析::本题考查的是在继承中构造函数和析构函数的调用顺序,应该是先调用基类的构造函数,再调用派生类的构造函数,调用析构函数时的顺序是先调用派生类的析构函数,后调用基类的析构函数。第28题:10程序有误10参考答案:A答案解析::考查return语句的用法和函数的调用。【解题要点】本题函数Max的功能是求出两个整数中的较大者,并且通return语句返回。【考点链接】retum语句的用法,注意return的条件。第29题:设inta=1,b=2;,贝U(a++)+b和a+++b这两个表达式的值分别为TOC\o"1-5"\h\z3,33,44,34,4参考答案:A答案解析::单目的++运算优先级高于双目的+运算,不过++的结合性是自右向左的,而+是自左至右的,所以上面的两个表达式都是先计算a+b的值之后,a再自加1。第30题:下列叙述中,不属于结构化程序设计方法的主要原贝的是自顶向下由底向上模块化限制使用goto语句参考答案:B答案解析::本题考查了结构化程序设计的原则。【解题要点】结构化程序设计方法的主要原则可以概括为以下4个方面,即自顶向下、逐步求精、模块化及限制使用goto语句。第31题:在结构化设计方法中,生成的结构图(SC)中,带有箭头的连线表示模块之间的调用关系程序的组成成分控制程序的执行顺序数据的流向参考答案:A答案解析::让考生对常用的软件结构设计工具要有较深入的了解。【解题要点】常用的软件结构设计工具是结构图(SC-StruetureChart),也称程序结构图。其中,矩形内用于注明模块的功能和名字;箭头表示模块间的调用关系,带实心圆的箭头表示传递的是控制信息,带空心圆的箭头表示传递的是数据。【考点链接】根据结构图设计思想,了解结构图构成的基本形式。第32题:a[p-a],*(&a[i])p[i]a[10]参考答案:D答案解析::通常,引用一个数组元素可以用下标法,如a[P-a]形式,或指针法,如。(&a[[i])的形式,本题中a[9]=9,a[10]显然超出了数组范围,注意,数组的下标是从0开始的。第33题:拷贝构造函数的参数一般是某对象名某对象成员名某对象的引用名指向对象的指针名参考答案:C答案解析::C++语言中拷贝构造函数的参数一般是某个对象的引用名。第34题:C++语言中标点符号中表示一条预处理命令开始的是TOC\o"1-5"\h\z#;C.{参考答案:A答案解析::C++语言中预处理语句的开始符号是#。第35题:为了提高测试的效率,应该随机选取测试数据取一切可能的输入数据作为测试数据在完成编码以后制定软件的测试计划集中对付那些错误群集的程序参考答案:D答案解析::测试的目的是发现软件中的错误。经验表明,程序中存在错误的概率与该程序中已发现的错误数成正比。这一现象说明,为了提高测试效率,测试人员应该集中对付那些错误群集的程序。二、填空题(每空2分,共30分)第36题:软件危机出现于60年代末,为了解决软件危机,人们提出了() 的原理来设计软件,这就是软件工程诞生的基础。参考答案:软件工程学详细解答:第37题:通过使用new和delete两个运算符进行的分配为() 存储分配。参考答案:动态详细解答::本题考查的是对动态分配内存的掌握,在C++语言中,使用关键字new和delete进行动态内存申请和释放。第38题:如果类B继承了类A,则称类A为类B的基类,类B称为类A的 参考答案:派生类详细解答::如果类A为类B的基类,那么类B称为类A的派生类。第39题:将x+y中的+运算符用友元函数重载应写为() 参考答案:[operator+(x,y)]详细解答::C++中用成员函数重载x+y为x.operator+(y);,用友元函数重载x+y为operator+(x,y)。第40题:如果要把返回值为void的函数A声明为类B的友元函数,则应在类B的定义中加入的语句是() 。参考答案:[friendvoidA();]详细解答::C++中类的友元函数在声明时应在该函数前面加上关键字friend,同样如果要声明一个类为另一个类的友元类也要在前面类名前加上friend。第41题:数据流图的类型有() 和事务型。参考答案:变换型详细解答::典型的数据流类型有两种:变换型和事务型。变换型是指信息沿输入通路进入系统,同时由外部形式变换成内部形式,进入系统的信息通过变换中心,经加工处理以后再沿输出通路变换成外部形式离开软件系统;在很多软件应用中,存在某种作业数据流,它可以引发一个或多个处理,这些处理能够完成该作业要求的功能,这种数据流就叫做事务。第42题:软件维护活动包括以下几类:改正性维护、适应性维护、() 维护和预防性维护。参考答案:完善性详细解答::软件维护活动包括以下几类:改正性维护、适应性维护、完善性维护和预防性维护。改正性维护是指在软件交付使用后,为了识别和纠正软件错误、改正软件性能上的缺陷、排除实施中的误使用,应当进行的诊断和改正错误的过程;适应性维护是指为了使软件适应变化,而去修改软件的过程;完善性维护是指为了满足用户对软件提出的新功能与性能要求,需要修改或再开发软件,以扩充软件功能、增强软件性能、改进加工效率、提高软件的可维护性;预防性维护是为了提高软件的可维护性、可靠性等,为以后的进一步改进软件打下良好基础。第43题:C++在重载运算符中,如用成员函数重载一元运算符参数表中需要() 个参数,如用友元函数重载一元运算符参数表中需要() 个参数。参考答案:0\1详细

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论