【计算机类职业资格】国家二级(C++)机试模拟试卷166及答案解析.doc
《【计算机类职业资格】国家二级(C++)机试模拟试卷166及答案解析.doc》由会员分享,可在线阅读,更多相关《【计算机类职业资格】国家二级(C++)机试模拟试卷166及答案解析.doc(17页珍藏版)》请在麦多课文档分享上搜索。
1、国家二级(C+)机试模拟试卷 166 及答案解析(总分:86.00,做题时间:90 分钟)一、选择题(总题数:40,分数:80.00)1.下列数据结构中,属于非线性结构的是( )。(分数:2.00)A.循环队列B.带链队列C.二叉树D.带链栈2.下列数据结构中,能够按照“先进后出”原则存取数据的是( )。(分数:2.00)A.循环队列B.栈C.队列D.二叉树3.对于循环队列,下列叙述中正确的是( )。(分数:2.00)A.队头指针是固定不变的B.队头指针一定大于队尾指针C.队头指针一定小于队尾指针D.队头指针可以大于队尾指针,也可以小于队尾指针4.算法的空间复杂度是指( )。(分数:2.00)
2、A.算法在执行过程中所需要的计算机存储空间B.算法所处理的数据量C.算法程序中的语句或指令条数D.算法在执行过程中所需要的临时工作单元数5.软件设计中划分模块的一个准则是( )。(分数:2.00)A.低内聚低耦合B.高内聚低耦合C.低内聚高耦合D.高内聚高耦合6.下列选项中不属于结构化程序设计原则的是( )。(分数:2.00)A.可封装B.自顶向下C.模块化D.逐步求精7.软件详细设计产生的图如下: (分数:2.00)A.NS 图B.PAD 图C.程序流程图D.ER 图8.数据库管理系统是( )。(分数:2.00)A.操作系统的一部分B.在操作系统支持下的系统软件C.一种编译系统D.一种操作系
3、统9.在 ER 图中,用来表示实体联系的图形是( )。(分数:2.00)A.椭圆形B.矩形C.菱形D.三角形10.有三个关系 R,S 和 T 如下: (分数:2.00)A.选择B.投影C.交D.并11.下列符号中可以用做 C+标识符的是( )。(分数:2.00)A._radiusB.foobarC.elseD.3room12.下列各组类型声明符中,含义相同的一组是( )。(分数:2.00)A.unsigned long int 和 longB.signed short int 和 shortC.unsigned short 和 shortD.short int 和 int13.必须用一对大括号
4、括起来的程序段是( )。(分数:2.00)A.switch 语句中的 case 标号语句B.if 语句的分支C.循环语句的循环体D.函数的函数体14.语句 int*p=&k;定义了指针 p,与这个语句等效的语句序列是( )。(分数:2.00)A.int*p;p=&k;B.int*p;p=k;C.int*p;*p=&k;D.int*p;*p=k;15.执行下列语句段后,输出字符“*”的个数是( )。for(int i=50;i1;i-=2)cout*;(分数:2.00)A.24B.25C.26D.5016.下列关于运算符重载的叙述中,错误的是( )。(分数:2.00)A.有的运算符可以作为非成员
5、函数重载B.所有的运算符都可以通过重载而被赋予新的含义C.不得为重载的运算符函数的参数设置默认值D.有的运算符只能作为成员函数重载17.对 C+编译器区分重载函数无任何意义的信息是( )。(分数:2.00)A.参数类型B.参数个数C.返回值类型D.常成员函数关键字 const18.运算符重载时不需要保持的性质是( )。(分数:2.00)A.操作数个数B.操作数类型C.优先级D.结合性19.下列关于函数的描述中,错误的是( )。(分数:2.00)A.函数可以没有返回值B.函数可以没有参数C.函数可以是一个类的成员D.函数不能被定义为模板20.关于函数重载,下列叙述中错误的是( )。(分数:2.0
6、0)A.重载函数的函数名必须相同B.重载函数必须在参数个数或类型上有所不同C.重载函数的返回值类型必须相同D.重载函数的函数体可以有所不同21.下列关于运算符重载的描述中,正确的是( )。(分数:2.00)A.运算符重载为成员函数时,若参数表中无参数,重载的是一元运算符B.一元运算符只能作为成员函数重载C.二元运算符重载为非成员函数时,参数表中有一个参数D.C+中可以重载所有的运算符22.有如下函数定义:void func(int a,int& b)a+;b+;若执行代码段:int x=0,y=1;func(x,y);则变量 x 和 y 的值分别是( )。(分数:2.00)A.0 和 1B.1
7、 和 1C.0 和 2D.1 和 223.对于一个类定义,下列叙述中错误的是( )。(分数:2.00)A.如果没有定义拷贝构造函数,编译器将生成一个拷贝构造函数B.如果没有定义缺省的构造函数,编译器一定将生成一个缺省的构造函数C.如果没有定义构造函数,编译器将生成一个缺省的构造函数和一个拷贝构造函数D.如果已经定义了构造函数和拷贝构造函数,编译器不会生成任何构造函数24.有如下头文件:int n();static int f2();class MApublic:int f3();static int f4();在所描述的函数中,具有隐含的 this 指针的是( )。(分数:2.00)A.f1B
8、.f2C.f3D.f425.下列关于类定义的说法中,正确的是( )。(分数:2.00)A.类定义中包括数据成员和函数成员的声明B.类成员的缺省访问权限是保护的C.数据成员必须被声明为私有的D.成员函数只能在类体外进行定义26.如果派生类以 protected 方式继承基类,则原基类的 protected 成员和 public 成员在派生类中的访问属性分别是( )。(分数:2.00)A.public 和 publicB.public 和 protectedC.protected 和 publicD.protected 和 protected27.下列有关继承和派生的叙述中,正确的是( )。(分数
9、:2.00)A.派生类不能访问基类的保护成员B.作为虚基类的类不能被实例化C.派生类应当向基类的构造函数传递参数D.虚函数必须在派生类中重新实现28.有如下类定义:class AAint a;public:AA(int n=0):a(n);class BB:public AApublic:BB(int n)_;其中横线处缺失的部分是( )。(分数:2.00)A.:a(n)B.:AA(n)C.a(n);D.a=n;29.有如下程序:#includeiostreamusing namespace std;class CDpublic:CD()coutC;private:char name80;in
10、t main()CD a,*b,d2;return0;执行这个程序的输出结果是( )。(分数:2.00)A.CCCCB.CCCC.CCD.C30.有如下程序:#includeiostreamusing namespace std;class MyClasspublic:MyClass()+count;MyClass()-count;static int getCount()return count;private:static int count;int MyClass:count=0;int main()MyClass obj;coutobjgetCount();MyClass*ptr=ne
11、w MyClass:coutMyClass:getCount();delete ptr;coutMyClass:getCount();return0;执行这个程序的输出结果是( )。(分数:2.00)A.121B.232C.221D.12231.有如下程序:#includeiostreamusing namespace std;class MyClasspublic:MyClass(int x):val(x)void Print()constcout“const:val=“valt;void Print()cout“val=“valt;private:int val;int main()con
12、st MyClass obj1(10);MyClass obj2(20);obj1Print();obj2Print();return0;执行这个程序的输出结果是( )。(分数:2.00)A.val=10 const:val=20B.const:val=10 const:val=20C.const:val=10 val=20D.val=10 val=2032.有如下程序:#includeiostreamusing namespace std;class Partpublic:Part(int x=0):val(x)coutval;Part()coutval;private:int val;cl
13、ass Wholepublic:Whole(int x,int y,intz=0):p2(x),p1(Y),val(z)coutval;Whole()coutval;private:Part p1,p2;int val;int main()Whole obj(1,2,3);return0;执行这个程序的输出结果是( )。(分数:2.00)A.123321B.213312C.213D.12312333.有如下程序:#includeiostreamusing namespace std;class Basepublic:Base(int x=0)coutx;class Derived:public
14、 Basepublic:Derived(int x=0)coutx;private:Base val;int main()Derived d(1);return0;执行这个程序的输出结果是( )。(分数:2.00)A.0B.1C.01D.00134.下列代码段中声明了 3 个类:class Person;class Student:public Person;class Undergraduate:Student;下列关于这些类之间关系的描述中,错误的是( )。(分数:2.00)A.类 Person 是类 Undergraduate 的基类B.类 Undergraduate 从类 Studen
15、t 公有继承C.类 Student 是类 Person 的派生类D.类 Undergraduate 是类 Person 的派生类35.有如下程序:#includeiostreamusing namespace std;class Basepublic:void output()cout1;virtual void Print()coutB;class Derived:public Basepublic:void output()cout2;void Print()coutD;int main()Base*ptr=new Derived;ptr-output();ptr-Print();dele
16、te ptr;return0;执行这个程序的输出结果是( )。(分数:2.00)A.1BB.1DC.2BD.2D36.有如下程序:#includeiostreamusing namespace std;class Bpublic:virtual void show()cout“B“;class D:public Bpublic:void show()cout“D“;void funl(B*ptr)ptr-show();void fun2(B &ref)refshow();void fun3(B b)bshow();int main()B b,*p=new D;D d;fun1(p);fun2(
17、b);fun3(d);delete p;return0;执行这个程序的输出结果是( )。(分数:2.00)A.BBBB.BBDC.DBBD.DBD37.C+中的模板包括( )。(分数:2.00)A.对象模板和函数模板B.对象模板和类模板C.函数模板和类模板D.变量模板和对象模板38.下列关于类模板的模板参数的叙述中,错误的是( )。(分数:2.00)A.模板参数可以作为数据成员的类型B.模板参数可以作为成员函数的返回类型C.模板参数可以作为成员函数的参数类型D.模板参数不能作为成员函数的局部变量的类型39.下列关于 C+预定义流对象的叙述中,正确的是( )。(分数:2.00)A.cin 是 C
18、+预定义的标准输入流对象B.cin 是 C+预定义的标准输入流类C.cout 是 C+预定义的标准输入流对象D.cout 是 C+预定义的标准输入流类40.有如下语句序列:char str10;cinstr;当从键盘输入“I love this game”时,str 中的字符串是( )。(分数:2.00)A.I love this gameB.I love thisC.I loveD.I二、基本操作题(总题数:1,分数:2.00)41.请使用 VC6 或使用【答题】菜单打开考生文件夹 proj1 下的工程 proj1,此工程中含有一个源程序文件 proj1cpp。其中位于每个注释“ERROR*
19、found*”之后的一行语句存在错误。请改正这些错误使程序的输出结果为:Constructor calledThe value is10Copy constructor calledThe value is10Destructor calledDestructor called注意:只修改注释“EROR*found*”的下一行语句,不要改动程序中的其他内容。proj1cpp#includeiostreamusing namespace std;class MyClasspublic:ERROR*found*MyClass(int i)value=i;cout“Constructor calle
20、d“endl;ERROR*found*MyClass(const MyClass p)value=pvalue;cout“Copy constructor called“endl:void Print()cout“The value is“valueendl;ERROR*found*voidMyClass()cout“Destructor called“endl;private:int value;int main()MyClass obj1;obj1Print();MyClass obj2(obj1);obj2Print();return0;(分数:2.00)_三、简单应用题(总题数:1,分
21、数:2.00)42.请使用 VC6 或使用【答题】菜单打开考生文件夹 proj2 下的工程 proj2,其中定义了 vehicle 类,并派生出 mot。rcar 类和 bicycle 类。然后以 mottorcar 和 bicycle 作为基类,再派生出 motorcycle 类。要求将 vehicle 作为虚基类,避免二义性问题。请在程序中的横线处填写适当的代码并删除横线,以实现上述类定义。此程序的正确输出结果应为:801501001 注意:只能在横线处填写适当的代码,不要改动程序中的其他内容,也不要删除或移动“*found*”。#includeiostreamhclass vehicle
22、private:int MaxSpeed;int Weight;public:*found*vehicle(intmaxspeed,intweight):_vehicle();int getMaxSpeed()return MaxSpeed;int getWeight()return Weight;*found*class bicycle:_public vehicleprivate:int Height;public:bicycle(int maxspeed,int weight,int height):vehicle(maxspeed,weight),Height(height)int g
23、etHeight()return Height;*found*class motorcar:_public vehicleprivate:int SeatNum;public:motorcar(int maxspeed,int weight,int seatnum):vehicle(maxspeed,weight),SeatNum(seatnum)int getSeatNum()return SeatNum;*found*classmotorcycle:_public:motorcycle(int maxspeed,int weight,int height):vehicle(maxspeed
- 1.请仔细阅读文档,确保文档完整性,对于不预览、不比对内容而直接下载带来的问题本站不予受理。
- 2.下载的文档,不会出现我们的网址水印。
- 3、该文档所得收入(下载+内容+预览)归上传者、原创作者;如果您是本文档原作者,请点此认领!既往收益都归您。
下载文档到电脑,查找使用更方便
5000 积分 0人已下载
下载 | 加入VIP,交流精品资源 |
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 计算机 职业资格 国家 二级 模拟 试卷 166 答案 解析 DOC
