《全国计算机等级考试二级c++题库13共17套.doc》由会员分享,可在线阅读,更多相关《全国计算机等级考试二级c++题库13共17套.doc(10页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、【精品文档】如有侵权,请联系网站删除,仅供学习与交流全国计算机等级考试二级c+题库13共17套.精品文档.第十三套1、下列关于队列的叙述中正确的是_。A、在队列中只能插入数据B、在队列中只能删除数据C、队列是先进先出的线性表D、队列是先进后出的线性表 队列是指允许在一端进行插入、而在另一端进行删除的线性表。它又称为先进先出或后进后出的线性表,体现了先来先服务的原则。本题答案为C。2、面向对象的设计方法与传统的的面向过程的方法有本质不同,它的基本原理是_。A、模拟现实世界中不同事物之间的联系B、强调模拟现实世界中的算法而不强调概念C、使用现实世界的概念抽象地思考问题从而自然地解决问题D、鼓励开发
2、者在软件开发的绝大部分中都用实际领域的概念去思考 面向对象的设计方法与传统的的面向过程的方法有本质不同,它的基本原理是,使用现实世界的概念抽象地思考问题从而自然地解决问题。它强调模拟现实世界中的概念而不强调算法,它鼓励开发者在软件开发的绝大部分中都用应用领域的概念去思考。本题答案为C。3、希尔排序法属于哪一种类型的排序法_。A、交换类排序法B、插入类排序法C、选择类排序法D、建堆排序法 希尔排序法的基本思想是:将整个无序序列分割成若干小的子序列分别进行插入排序。所以希尔排序法属于插入类排序,但它对简单插入排序做了很大的改进。本题答案为B。4、信息隐蔽的概念与下述哪一种概念直接相关_。A、软件结
3、构定义B、模块独立性C、模块类型划分D、模拟耦合度 信息隐蔽是指在一个模块内包含的信息(过程或数据),对于不需要这些信息的其他模块来说是不能访问的。 模块独立性是指每个模块只完成系统要求的独立的子功能,并且与其他模块的联系最少且接口简单。 衡量软件的模块独立性的度量标准是耦合性和内聚性。一个模块的内聚性越强,则该模块的模块独立性越强。而内聚性是信息隐蔽和局部化概念的自然扩展。本题答案为B。5、数据库概念设计的过程中,视图设计一般有三种设计次序,以下各项中不对的是_。A、自顶向下B、由底向上C、由内向外D、由整体到局部 数据库概念设计的过程中,视图设计一般有三种设计次序,它们是: 1、自顶向下。
4、这种方法是先从抽象级别高且普遍性强的对象开始逐步细化、具体化与特殊化。 2、由底向上。这种设计方法是先从具体的对象开始,逐步抽象,普遍化与一般化,最后形成一个完整的视图设计。 3、由内向外。这种设计方法是先从最基本与最明显的对象着手逐步扩充至非基本、不明显的其它对象。本题答案为D。6、对长度为N的线性表进行顺序查找,在最坏情况下所需要的比较次数为_。A、N+1B、NC、(N+1)/2D、N/2 在进行顺序查找过程中,如果线性表中被查的元素是线性表中的最后一个,或者被查元素根本不在线性表中,则为了查找这个元素需要与线性表中所有元素进行比较,这是顺序查找最坏的情况。本题答案为B。7、在结构化方法中
5、,软件功能分解属于下列软件开发中的_阶段。A、详细设计B、需求分析C、总体设计D、编程调试 总体设计过程通常由两个主要阶段组成:系统设计,确定系统的具体实现方案;结构设计,确定软件结构。为确定软件结构,首先需要从实现角度把复杂的功能进一步分解。分析员结合算法描述仔细分析数据流图中的每个处理,如果一个处理的功能过分复杂,必须把它的功能适当地分解成一系列比较简单的功能。本题答案为C。8、按条件f对关系R进行选择,其关系代数表达式为_。A、B、C、f(R)D、f(R) 选择运算是一个一元运算,关系R通过选择运算(并由该运算给出所选择的逻辑条件)后仍为一个关系。这个关系是由R中那些满足逻辑条件的元组所
6、组成。如果关系的逻辑条件为f,则R满足f的选择运算可以写成:f(R)。本题答案为C。9、软件调试的目的是_。A、发现错误B、改正错误C、改善软件的性能D、挖掘软件的潜能 由程序调试的概念可知:程序调试活动由两部分组成,其一是根据错误的迹象确定程序中错误的确切性质、原因和位置。其二,对程序进行修改,排除这个错误。所以程序调试的目的就是诊断和改正程序中的错误。本题答案为B。10、在下列选项中,哪个不是一个算法一般应该具有的基本特征_。A、确定性B、可行性C、无穷性D、拥有足够的情报 作为一个算法,一般应具有以下几个基本特征。 1、可行性 2、确定性 3、有穷性 4、拥有足够的情报本题答案为C。11
7、、设char *s;,以下正确的表达式是_。A、s=computerB、*s=computerC、*s=computerD、*s=c/char为字符 本题考查的是字符指针的使用。 ”char *s“表示定义一个二级指针s,s存放一个字符指针的地址。故”*s”表示一个字符指针。故本题选B。12、对于常成员函数,下面说法正确的是_。A、常成员函数只能修改常数据成员B、常成员函数只能修改一般数据成员C、常成员函数不能修改任何数据成员D、常成员函数只能通过常对象调用 本题考查常成员函数的性质。 使用关键字const说明的函数称为常成员函数,常成员函数不能更新对象中的数据成员。故本题答案是C。13、类的
8、默认的拷贝构造函数_。A、在任何情况下都存在B、仅当未定义拷贝构造函数时存在C、仅当未定义有参构造函数时存在 D、仅当未定义任何构造函数时存在 本题考查拷贝构造函数的概念。 拷贝构造函数也是一种构造函数,因此函数名必需与类名相同,并且不能指定函数返回值类型。每个类必需有一个拷贝构造函数,如果没有声明一个拷贝构造函数,编译器会自动产生一个。故本题选B。14、有如下程序段:for(int i = 1;i4;i+) if(i%2 = 0) coutinue; couti*”,“:”,“?:”等操作符在C+中无法重载的。故本题选D。19、若x是一个bool型变量,y是一个值为100的int型变量,则表
9、达式 !x & y0 的值_。A、为trueB、为falseC、与x的值相同D、与x的值相反 本题考查的是逻辑运算符。 C+中有三种逻辑运算符!(非),|(或),&(与)。运算的优先级从高到底依次为!,&,|。故本题选D。20、for(i=0, x=0; !x&i=5; i+)循环的次数为_。A、5B、6C、1D、无限 本题考查的是循环语句。 !x值为true可不考虑,单独考虑i的值从0到5循环了6次。故本题选B。21、关于虚函数的描述中,正确的是_。A、虚函数是一个static类型的成员函数B、虚函数是一个非成员函数C、基类中说明了虚函数后,派生类中将其对应的函数可不必说明为虚函数D、派生类
10、的虚函数与基类的虚函数具有不同的参数个数和类型 本题考查的虚函数的使用 在成员函数前加上virtual修饰,即把该函数声明为虚函数。在派生类中可以重新定义从基类继承下来的虚函数。故本题选C。22、已知:类A中一个成员函数说明如下:void Set(A&a);其中,A&的含义是_。A、指向类A的指针为aB、将a的地址值赋给变量SetC、a是类A对象的引用,用来作函数Set()的参数D、变量A与a按位与作为函数Set( )的参数 本题考查的引用的用法。 引用是为变量取个别名,声明的方式为类型 &引用名=变量名。引用可以作为一个函数的参数。故本题选C。23、对于C/C+语言的函数,下列叙述中正确的是
11、_。A、函数的定义不能嵌套,但函数调用可以嵌套B、函数的定义可以嵌套,但函数调用不能嵌套C、函数的定义和调用都不能嵌套D、函数的定义和调用都可以嵌套 本题考查函数定义的基本概念。 函数的定义不可以嵌套,即不能在一个函数的内部定义另外一个函数。但是函数的调用可以嵌套。可以在一个函数的内部调用另外一个函数。故本题选A。24、对于int *pa5;的描述中,_是正确的。A、pa是一个指向数组的指针,所指向的数组是5个int型元素B、pa是一个指向某数组中第5个元素的指针,该元素是int型变量C、pa 5表示某个元素的第5个元素的值D、pa是一个具有5个元素的指针数组,每个元素是一个int型指针 本题
12、考查的是指针数组。 *pa5是具有五个元素的指针数组,int *pa5则表示每个元素都是整型的指针。故本题选D。25、在int a 3=1,3,2,4,5,6,0;中,a22的值是_。A、1B、0C、6D、2 本题考查二维数组的使用。 数组可以在定义的时候给出其初始化的值,如果所给的比数组的大小少,则后面缺省的是0。故本题选C。26、下面的哪个保留字不能作为函数的返回类型_。A、newB、intC、voidD、long 本题考查函数的定义。 函数的返回值可以是基本的数据类型也可以是用户自定义类型。new不是基本的数据类型,所以不能用它来作为函数的返回值。故本题选A。27、_不是构造函数的特征。
13、A、构造函数的函数名与类名相同B、构造函数可以重载C、构造函数可以设置缺省参数D、构造函数必须指定类型说明 本题考查构造函数的基本概念。 构造函数是特殊的成员函数,它必需与类名相同,不能指定返回值类型,可以有一个或者多个参数可以重载。 故本题选D。28、当类中一个字符指针成员指向具有n个字节的存储空间时,它所能存储字符串的最大长度为_。A、n-2B、n-1C、nD、n+1 本题考查的是字符指针。 C+中,字符串总是以0作为字符串结束的标志的。故本题选B。29、已知数组A和指针p定义为:int A2010,*p;,要使p指向A的首元素,正确的赋值表达式是_。A、p=&A 或 p=A00 B、p=
14、A0 或 p=&A00C、p=A 或 p=&A00 D、p=&A0 或 p=A00 本题考查的指针和二维数组的概念。A0表示指针,其存放的是A00的地址,A00表示数组A的第一个值,所以要在A00前加&。故本题选B。30、在一个函数中,要求通过函数来实现一种不太复杂的功能,并且要求加快执行速度,选用_。A、内联函数B、重载函数C、递归调用D、嵌套调用 本题考查的是内联函数。 内联函数像宏函数一样展开,没有参数的压栈和退栈操作,因此执行的效率更高。故本题选A。31、当使用fstream流类定义一个流对象并打开一个磁盘文件时,文件的隐含打开方式为_。A、ios:in B、ios:outC、ios:
15、in | ios:out D、没有 本题考查的是文件的操作。 在C+中用fstream流类定义一个流对象并打开一个磁盘文件时,没有隐含的打开方式。故本题选D。32、在下面的一维数组定义中,_有语法错误。A、int a=1,2,3B、int a10=0C、int a D、int a5 本题考查的是数组的定义。数组定义时需要指定数组的大小,如果给出初始值,可以省略数组的大小,系统会根据所给的元素自动计算出其大小。但是不可以在没有给出初始值的情况下缺省大小。故本题选C。33、已知某应用系统中已经定义了函数fun,其原形是int fun(char =A); 则下列函数中,可以在同一系统中加以重载的是_
16、。A、int fun(); B、int fun(char);C、int fun(char,int); D、int fun(char,double=0.0); 本题考查的重载函数的定义。 重载的函数要求它们参数的个数或者类型不同。所以本题选C。34、在下列表示引用的方法中,_是正确的。已知:int m=10;A、int &x=mB、int &y=10C、int &zD、float &t=&m 本题考查的是引用的定义。 引用是给变量起个别名,引用定义形式为:类型 &引用名=变量名。故本题选A。35、由C+目标文件连接而成的可执行文件的缺省扩展名为_。A、cppB、exeC、likD、obj 本题考
17、查C+的基本概念。 由C+编辑器编辑好的程序叫源程序扩展名为.cpp,由编译程序编译过的程序扩展名为.obj,由连接程序连接而成的可程序叫做可执行程序,扩展名为.exe。故本题选B。36、数据流的类型有_和事务型。标准答案为:变换型 典型的数据流类型有两种:变换型和事务型。 变换型:是指信息沿输入通路进入系统,同时由外部形式变换为内部形式,进入系统的信息通过变换中心,经加工处理以后再沿输出通路变换成外部形式离开软件系统。事务型:在很多软件应用中,存在某种作业数据流,它可以引发一个或多个处理,这些处理能够完成该作业要求的功能,这种数据流就叫做事务。37、栈的基本运算有三种:入栈、退栈和_。标准答
18、案为:读栈顶元素 或 读栈顶的元素 或 读出栈顶元素 栈的基本运算有三种:入栈、退栈和读栈顶元素。 入栈运算是指在栈顶位置插入一个新元素。这个运算有两个基本操作:首先将栈顶指针进一(即top加1),然后将新元素插入到栈顶指针指向的位置。 退栈运算是指取出栈顶元素并赋给一个指定的变量。这个运算有两个基本操作:首先将栈顶元素(栈顶指针指向的元素)赋给一个指定的变量,然后将栈顶指针退一(即top减1)。读栈顶元素是指将栈顶元素赋给一个指定的变量。这个运算不删除栈顶元素,只是将它的值赋给一个变量。38、关系模型的数据操纵即是建立在关系上的数据操纵,一般有_、增加、删除和修改四种操作。标准答案为:查询
19、关系模型的数据操纵即是建立在关系上的数据操纵,一般有查询、增加、删除和修改四种操作。 数据查询:用户可以查询关系数据库中的数据,它包括一个关系内的查询以及多个关系间的查询。 数据删除的基本单位是一个关系内的元组,它的功能是将指定关系内的指定元组删除。 数据插入仅对一个关系而言,在指定关系中插入一个或多个元组。数据修改是在一个关系中修改指定的元组和属性。39、在面向对象方法中,信息隐蔽是通过对象的_性来实现的。标准答案为:封装 软件工程的基本原则包括抽象、信息隐蔽、模块化、局部化、确定性、一致性、完备性和可验证性。信息隐蔽是指采用封装技术,将程序模块的实现细节隐藏起来,使模块接口尽量简单。40、
20、数据库系统中实现各种数据管理功能的核心软件称为_。标准答案为:数据库管理系统 或 DBMS数据库管理系统是数据库的机构,它是一种系统软件,负责数据库中的数据组织、数据操纵、数据维护、控制及保护和数据服务等。数据库管理系统是数据库系统的核心。41、使用const语句定义一个标识符常量时,则必须对它同时进行_。标准答案为:初始化定义常量必需对其进行初始化。42、假定P所指对象的值为25,p+1所指对象的值为46,则执行(*p)+;语句后,P所指对象的值为_。标准答案为:26 本题考查的是指针使用。(*p)+首先是将p所指向的内存单元的数值取出,然后加1。故本题答案为26。43、已知AZ的ASCII
21、码为6590,当执行char ch14*5+2;coutchend1;语句序列后,得到的输出结果为_。标准答案为:HASCII码为72的字符为H。在系统容许的情况下,赋值符“=”总是试着将右边的表达式向左边变量的类型转换。44、用new动态申请的内存空间,必须用_来释放。标准答案为:delete用new动态申请的内存空间,必须用delete来释放。new和delete是相对应的。45、字符串hello,world在内存中存放时,占用_个字节的空间。标准答案为:12字符串中有一个字符串的结束符0,需要占一个字节的空间。46、基类中被说明为_的成员只能被其派生类的成员函数访问,不能被外界函数访问。
22、标准答案为:protected基类中被说明为protected的成员只能被其派生类的成员函数访问,不能被其它的函数访问。47、若需要把一个函数void F();定义为一个类AB的友元函数,则应在类AB的定义中加入一条语句:_。标准答案为:friend void F( );友元函数定义时在函数前面加上关键字friend。48、说明指向_类型的指针,说明以后,这个指针就可指向各种不同类型的数据对象。标准答案为:void空类型void用于显示说明一个函数不返回任何值。还可以说明指向void类型的指针,说明以后,这个指针就可指向各种不同类型的数据对象。49、将两个字符串连接起来组成一个字符串时,用_函数。标准答案为:strcat函数strcat的作用是将两个字符串连接起来组成一个字符串。50、设px是指向一个类动态对象的指针变量,则执行delete px;语句时,将自动调用该类的_函数。标准答案为:析构