历年计算机二级C++笔试试题及答案.docx
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_05.gif)
《历年计算机二级C++笔试试题及答案.docx》由会员分享,可在线阅读,更多相关《历年计算机二级C++笔试试题及答案.docx(245页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、2005年9月全国计算机等级考试二级C+笔试试题及答案(考试时间90分钟,满分100分)一、选择题(每小题2分,共70分)下列各题A)、B)、C)、D)四个选项中,只有一个选项是正确的,请将正确选项涂写在答题卡相应位置上,答在试卷上不得分。(1)下列叙述中正确的是A)程序设计就是编制程序B)程序的测试必须由程序员自己去完成C)程序经调试改错后还应进行再测试D)程序经调试改错后不必进行再测试(2)下列数据结构中,能用二分法进行查找的是A)顺序存储的有序线性表B)线性链表C)二叉链表D)有序线性链表(3)下列关于栈的描述正确的是A)在栈中只能插入元素而不能删除元素B)在栈中只能删除元素而不能插入元
2、素C)栈是特殊的线性表,只能在一端插入或删除元素D)栈是特殊的线性表,只能在一端插入元素,而在另一端删除元素(4)下列叙述中正确的是A)一个逻辑数据结构只能有一种存储结构B)数据的逻辑结构属于线性结构,存储结构属于非线性结构C) 一个逻辑数据结构可以有多种存储结构,且各种存储结构不影响数据处理的效率D) 一个逻辑数据结构可以有多种存储结构,且各种存储结构影响数据处理的效率(5)下列描述中正确的是A)软件工程只是解决软件项目的管理问题B)软件工程主要解决软件产品的生产率问题C)软件工程的主要思想是强调在软件开发过程中需要应用工程化原则D)软件工程只是解决软件开发中的技术问题(6)在软件设计中,不
3、属于过程设计工具的是A) PDL(过程设计语言)B) PAD 图C) N-S 图D) DFD 图(7)下列叙述中正确的是A)软件交付使用后还需要进行维护B)软件一旦交付使用就不需要再进行维护C)软件交付使用后其生命周期就结束D)软件维护是指修复程序中被破坏的指令(8)数据库设计的根本目标是要解决A)数据共享问题B)数据安全问题C)大量数据存储问题D)简化数据维护(9)设有如下关系表:则下列操作中正确的是A) T=RCSB)T=RUSC) T=RxSD) T=R/S(10)数据库系统的核心是A)数据模型B)数据库管理系统C)数据库D)数据库管理员(11)下列关于C+函数的叙述中,正确的是A)每个
4、函数至少要具有一个参数B)每个函数都必须返回一个值C)函数在被调用之前必须先声明D)函数不能自己调用自己(12)下列关于类和对象的叙述中,错误的是A)一个类只能有一个对象B)对象是类的具体实例C)类是对某一类对象的抽象D)类和对象的关系是一种数据类型与变量的关系(13)在C+中,用于实现运行时多态性的是A)内联函数B)重载函数C)模板函数D)虚函数(14)下列关于运算符重载的叙述中,正确的是A)通过运算符重载,可以定义新的运算符B)有的运算符只能作为成员函数重载C)若重载运算符+,则相应的运算符函数名是+D)重载一个二元运算符时,必须声明两个形参(15)下列关于模板的叙述中,错误的是A)模板声
5、明中的第一个符号总是关键字templateB)在模板声明中用括起来的部分是模板的形参后C)类模板不能有数据成员D)在一定条件下函数模板的实参可以省略(16)对于语句coutA) “cout”是一个输出流对象B) “endl”的作用是输出回车换行C) “x”是一个变量D) “”称作提取运算符(17)下列字符串中,正确的C+标识符是A) fbo-1B) 2bC) newD) 256(18)已知枚举类型定义语句为:enum Token NAME, NUMBER, PLUS =5, MINUS, PRINT =10;则下列叙述中错误的是A)枚举常量NAME的值为1B)枚举常量NUMBER的值为1C)枚
6、举常量MINUS的值为6D)枚举常量PRINT的值为10(19)执行语句序列int i=0; while(i x 25) i+=3; cout输出结果是A) 24B) 25C) 27D) 28(20)要定义一个具有5个元素的一维数组vect,并使其各元素的初值依次是30,50,-88,0和0,则下列定义语句中错误的是A) int vect=30,50,-88;B) int vect=30,50,-88,0,0;C) intvect5=30,50,-88;D) int vect5=30,50,-88,0,0;(21)有如下程序:#include void fun(int& x, int y) i
7、nt t = x; x = y; y = t; int main()int a2=23,42);fun(al, a0);std:cout a0, al std:endl;return 0;)执行后的输出结果是A) 42,42B) 23,23C) 23,42D) 42,23(22)有如下类声明:class Foo int bar;则Foo类的成员bar是A)公有数据成员B)公有成员函数C)私有数据成员D)私有成员函数(23)有如下类声明:class MyBASEint k;public:void set(int n) k=n;int get()const return k;;class MyDE
8、RIVED: protected MyBASEprotected:intj;public:void set(int m, int n) MyBASE:set(m); j=n;int get()const return MyBASE:get()+j;);则类MyDERIVED中保护的数据成员和成员函数的个数是A) 4B) 3C) 2D) 1(24)已知在一个类体中包含如下函数原型:VOLUME operator-(VOLUME)const;,下列关于这个函数的叙述中,错误的是A)这是运算符-的重载运算符函数B)这个函数所重载的运算符是一个一元运算符C)这是一个成员函数D)这个函数不改变类的任何数
9、据成员的值(25)有如下函数模板定义:templateT func(T x, T y) return x*x+y*y;在下列对func的调用中,错误的是A) func(3,5);B) func(3.0,5.5);C) func (3,5.5);D) fiinc(3,5.5);(26)有如下程序:#includeusing namespace std;int main()cout.fill(*);cout.width(6);cout.fillf#);cout123 endl;return 0;执行后的输出结果是A) #123B) 123#C) *123D) 123*(27)在下列函数原型中,可以
10、作为类AA构造函数的是A) voidAA(int);B) int AA();C) AA(int)const;D) AA(int);(28)下列关于this指针的叙述中,正确的是A)任何与类相关的函数都有this指针B)类的成员函数都有this指针C)类的友元函数都有this指针D)类的非静态成员函数才有this指针(29)有如下程序:#includeusing namespace std;class Test public:Test() n+=2;Test() n-=3;static int getNum() return n;private:static int n;; int Test:n
11、 =1;int main()(Test* p = new Test;delete p;coutn= Test:getNum() endl;return 0;执行后的输出结果是A) n=0B) n=lC) n=2D) n=3(30)有如下程序:#includeusing namespace std;class A public:A() cout A,;;class B public: B() coutB*;class C : public A Bb;public:C() coutC;;int main() C obj; return 0;执行后的输出结果是A) CBAB) BACC) ACBD)
12、 ABC(31)有如下类声明:class XAint x;public:XA(int n) x=n;);class XB: public XAint y;public:XB(int a,int b););在构造函数XB的下列定义中,正确的是A) XB:XB(int a,int b): x(a), y(b)B) XB:XB(int a,int b): XA(a), y(b)C) XB:XB(int a,int b): x(a), XB(b) D) XB:XB(int a,int b): XA(a), XB(b)(32)有如下程序:#includeusing namespace std;class
13、 BASEpublic:BASE() coutBASE;;class DERIVED: public BASE public:DERIVED() coutDERIVED;);int main()DERIVED x; return 0;执行后的输出结果是A) BASEB) DERIVEDC) BASEDERIVEDD) DERIVEDBASE(33)在表达式x+y*z中,+是作为成员函数重载的运算符,*是作为非成员函数重载的运算符。下列叙述中正确的A) operator+有两个参数,operator*有两个参数B) operator+有两个参数,operator*有一个参数C) operator
14、+W一个参数,operator*有两个参数D) operator+有一个参数,operator*有一个参数(34)下面关于C+流的叙述中,正确的是A) cin是一个输入流对象B)可以用ifstream定义一个输出流对象C)执行语句序列 char *y=PQMN; cout,-,输出结果为【8】o(8)下列程序的输出结果为Object id=0Object id=l请将程序补充完整。#includeusing namespace std;class Point(public:Point(int xx=0, int yy=0)X=xx; Y=yy; countP+;Point() countP;i
15、nt GetX()return X;int GetY()return Y;static void GetC()cout Object id=fun();delete p;return 0;(12)请将下列类定义补充完整。class Base public: void fun() coutBase:funclass Derived : public Base public:void fiin()13 显式调用基类的fun函数cout Deri ved 二 fbnENDL;);(13)多数运算符既能作为类的成员函数重载,也能作为类的非成员函数重载,但运算符只能作为类的14函数重载。(14)下面是一
16、个栈类的模板,其中push函数将元素i压入栈顶,pop函数弹出栈顶元素。栈初始为空,top值为0,栈顶元素在stacktop-l中,在下面横线处填上适当语句,完成栈类模板的定义。templateclass Tstack enum size=1000;T stack size;int top;public:Tstack():top(0) void push(const T &i) if(top=22.C34.A42.10-1023.B35.B43.int2006年4月全国计算机等级考试二级C+笔试试题及答案一、选择题(1)(35)每小题2分,共70分)下列各题A)、 B)、C)、D)四个选项中,
17、只有一个选项是正确的,请将正确选项涂写在答题卡相应位置上,答在试卷上不得分。(1)下列选项不属于结构化程序设计方法的是A.自顶向下B.逐步求精C.模块化D.可复用(2)两个或两个以上模块之间关联的紧密程度称为A.耦合度B.内聚度C.复杂度D.数据传输特性(3)下列叙述中正确的是A.软件测试应该由程序开发者来完成B.程序经调试后一般不需要再测试C.软件维护只包括对程序代码的维护D.以上三种说法都不对(4)按照“后进先出”原则组织数据的数据结构是A.队列B.栈C.双向链表D.二叉树(5)下列叙述中正确的是A.线性链表是线性表的链式存储结构B.栈与队列是非线性结构C.双向链表是非线性结构D.只有根结
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 历年 计算机 二级 C+ 笔试 试题 答案
![提示](https://www.taowenge.com/images/bang_tan.gif)
限制150内