1、全国计算机等级考试无纸化真考题库试卷 (2) 二级 C+ (考试时间 l20 分钟,满分 100 分 ) 一、选择题 (每小题 1 分。共 40 分 ) (1)一个栈的初始状态为空。现将元素 1、 2、 3、 4、 5、 A、 B、 C、 D、 E 依次入栈,然后再依次出栈,则元素出栈的 顺序是( )。 A)12345ABCDE B)EDCBA54321 C)ABCDEl2345 D)5432lEDCBA (2)下列叙述中正确的是( )。 A)循环队列有队头和队尾两个指针,因此,循环队列是非线性结构 B)在循环队列中,只需要队头指针就能反映队列中元素的动态变化情况 C)在循环队列中,只需要队尾
2、指针就能反映队列中元素的动态变化情况 D)循环队列中元素的个数是由队头指针和队尾指针共同决定 (3)在长度为 n 的有序线性表中进行二分查找,最坏情况下需要比较的次数是( )。 A)O(n) B)O(n2) C)O(1092n) C)0(n1092n) (4)下列叙述中正确的是( )。 A)顺序存储结构的存储一定是连续的,链式存储结构的存储空间不一定是连续的 B)顺序存储结构只针对线性结构,链式存储结构只针对非线性结构 c)顺序存储结构能存储有序表,链式存储结构不能存储有序表 D)链式存储结构比顺序存储结构节省存储空间 (5)数据流图中带有箭头的线段表示的是( )。 A)控制流 B)事件驱动
3、C)模块调用 D)数据流 (6)在软件开发中,需求分析阶段可以使用的工具是( )。 A)N s 图 B)DFD 图 C)PAD 图 D)程序流程图 (7)在面向对象方法中,不属于“对象”基本特点的是( )。 A)一致性 B)分类性 C)多态性 D)标识唯一性 (8)一间宿舍可住多个学生,则实体宿舍和学生之间的联系是( )。 A)一对一 B)一对多 C)多对一 D)多对多 (9)在数据管理技术发展的三个阶段中,数据共享最好的是( )。 A)人工管理阶段 B)文件系统阶段 c)数据库系统阶段 D)三个阶段相同 (10)有三个关系 R、 S 和 T 如下: 由关系 R 和 S 通过运算得到关系 T,
4、则所使用的运算为( )。 A)笛卡尔积 B)交 C)并 D)自然连接 (11)下列语句中,错误的是( )。 A)const int buffer=256; B) const double*point; C)int const buffer=256; D)double*eonst point: (12)if 语句的语法格式可描述为: 格式 l: if() 或 格式 2: if() else 关于上面的语法格式,下列表述中错误的是( )。 A)部分可以是一个 if 语句,例如 if(if(a=0) ) B)部分可以是一个 if 语句,例如 if( )if( ) c)如果在 前加上逻辑非运算符 !并
5、交换 和 的位置,语句功能不变 D)部分可以是一个循环语句,例如 if( )while( ) (13)有如下说明: int a10=1, 2, 3, 4, 5, 6, 7, 8, 9, 10, * P=a; 则数值为 9 的表达式是 ( )。 A)*P+9 B)木 (P+8) C)*P+=9 D)P+8 (14)有如下程序段: int i=0, J=1; int&r=i; r=j; int*P=&i; *P= r; 其中会产生编译错误的语句是( )。 A) B) C) D) (15)下列字符串中。不可以用做 c+标识符的是( )。 A)y_2006 B)_EST_H C)Return D)sw
6、itch (16)为了取代 c 中带参数的宏,在 c+中使用( )。 A)重载函数 B)内联函数 C)递归函数 D)友元函数 (17)通过运算符重载,可以改变运算符原有的( )。 A)操作数类型 B)操作数个数 C)优先级 D)结合性 (18)在函数中,可以用 aut0、 extem、 register 和 static 这四个关键字中的一个来说明变量的存储类型,如果不说 明存储类型,则默认的存储类型是( )。 A)auto B)extern C)register D)static (19)下列运算符函数中肯定不属 于类 FunNumber 的成员函数的是( )。 A)int operator
7、 一 (FunNumber); B)FunNumber operator 一 (); C)FunNumber operator 一 (int); D)int operator 一 (FunNumber, FunNumber); (20)若有下面的函数调用: fun(fl+b, 3, max(n 一 1, b) 则 fun 的实参个数是( )。 A)3 B)4 C)5 D)6 (21)关于运算符重载,下列表述中正确的是( )。 A)c+已有的任何运算符都可以重载 B)运算符函数的返回类型不能声明为基本数据类型 C)在类型转换符函数的定义中不需要声明返回类型 D)可以通过运算符重载来创建 c+中原
8、来没有的运算符 (22)有如下程序: #nclude using namespace std; int main() void function(double val); double val; function(val); cout using namespace std; classBase public: void fun() _ coutfun(); D)fun(); (29)有如下程序: #include using namespace std; class MyClass public: MyClass()cout using namespace std; int i=1; cla
9、ss Fun public: static int i; int value()return i l; int value()constreturn i+1; ; int Fun: i=2; int main() int i=3; Fun funl; const Fun fun2: _ return 0; 若程序的输出结果是: 123 则程序中下画线处遗漏的语句是( )。 A)cout using namespace std; class Obj static int i; public: Obj()i+; 一 Obj()i 一一; static int getVal()return i; ;
10、 int Obj: i=0: void f()Obj ob2; coutgetVal(); delete ob3; cout using namespace std; class Pair int m, n; public: Pair(int j, int k): m(j), n(k) int get()return m; int get()constreturn m+n; ; int main() Pair a(3, 5); const Pair b(3, 5); tout using namespace std; class Base protected: Base()cout using
11、 namespace std; class Instrument public: virtual void Display()=0; ; class Pian0: public Instrument public: void Display() *函数体略 * ; intmain() Instrument S; Instrument*P=0: ; return 0; 下列叙述中正确的是( )。 A)语句“ Insturment*P=0;”编译时出错 B)语句“ Instnunent s;”编译时出错 C)类 Pian0 中的 Display 函数不是虚函数 D)类 Instrument 是一个
12、虚基类 (36)有如下程序: #include using namespace std; class A public: virtual void fancl()coutfuncl(); P func2(); delete p; return 0; 执行这个程序的输出结果是 ( )。 A)B182 B)A1A2 C)B1A2 D)AIB2 (37)关于在调用模板函数时模板实参的使用,下列表述中正确的是( )。 A)对于虚拟类型参数所对应的模板实参,如果能从模板函数的实参中获得相同的信息,则都可以省略 B)对于虚拟类型参数所对应的模板实参,如果它们是参数表中的最后的若干个参数,则都可以省略 C)
13、对于虚拟类型参数所对应的模板实参,若能够省略则必须省略 D)对于常规参数所对应的模板实参,任何情况下都不能省略 (38)关于关键字 class 和 typename,下列表述中正确的是( )。 A) 程序中的 typename 都可以替换为 class B)程序中的 class 都可以替换为 typename C)在模板形参表中只能用 ypename 来声明参数的类型 D)在模板形参表中只能用 class 或 typenanle 来声明参数的类型 (39)在下列枚举符号中,用来表示“相对于当前位置”文件定位方式的是( )。 A)ios_base: cur B)ios base: beg C)l
14、os_base: 0ut D)ios base: end (40)下列关于 c+流的描述中,错误的是( )。 A)cout A表达式可输出字符 A B)eof()函数可以检测是否到达文件尾 C)对磁盘文件进行流操作时,必须包含头文件 fstream D)以 ios_base: 0ut 模式打开的文件不存在时,将自动建立一个新文件 二、基本操作题 (共 l8 分 ) 请使用 VC6 或使用【答题】菜单打开考生文件夹 projl 下的工程 projl,此工程中包含一个源程序文件 main cpp,其中有类 Book(“书” )和主函数 main 的定义。程序中位于每个“ERROR*found*”下
15、 的语句行有错误,请加以改正。改正后程序的输出结果 应该是: 书名: C+语句程序设计总页数: 299 已把“ c+语言程序设计”翻到第 50 页 已把“ c+语言程序设计”翻到第 51 页 已把“ c+语言程序设计”翻到第 52 页 已把“ c+语言程序设计”翻到第 51 页 已把书合上。 当前页: 0 注意:只修改每个“ ERROR *found*”下的那一行,不要改动程序中的其他内容。 #include using namespace std; class Book char*title; int num pages;页数 int cur_page;当前打开页面的页码, 0 表示书未打开 public: ERROR*found* Book(const char*theTitle, int pages)num_pages(pages) title=new charstrlen(theTitle)+1; strepy(title, theTitle); couthum_pages)
Copyright © 2018-2021 Wenke99.com All rights reserved
工信部备案号:浙ICP备20026746号-2
公安局备案号:浙公网安备33038302330469号
本站为C2C交文档易平台,即用户上传的文档直接卖给下载用户,本站只是网络服务中间平台,所有原创文档下载所得归上传人所有,若您发现上传作品侵犯了您的权利,请立刻联系网站客服并提供证据,平台将在3个工作日内予以改正。