[计算机类试卷]国家二级(C++)机试模拟试卷77及答案与解析.doc

上传人:ownview251 文档编号:502529 上传时间:2018-11-29 格式:DOC 页数:31 大小:113KB
下载 相关 举报
[计算机类试卷]国家二级(C++)机试模拟试卷77及答案与解析.doc_第1页
第1页 / 共31页
[计算机类试卷]国家二级(C++)机试模拟试卷77及答案与解析.doc_第2页
第2页 / 共31页
[计算机类试卷]国家二级(C++)机试模拟试卷77及答案与解析.doc_第3页
第3页 / 共31页
[计算机类试卷]国家二级(C++)机试模拟试卷77及答案与解析.doc_第4页
第4页 / 共31页
[计算机类试卷]国家二级(C++)机试模拟试卷77及答案与解析.doc_第5页
第5页 / 共31页
点击查看更多>>
资源描述

1、国家二级( C+)机试模拟试卷 77及答案与解析 一、选择题 1 下列关于虚函数的说明中,正确的是 ( )。 ( A)从虚基类继承的函数都是虚函数 ( B)虚函数不得是静态成员函数 ( C)只能通过指针或引用调用虚函数 ( D)抽象类中的成员函数都是虚函数 2 下列关于 C+流的描述中,错误的是 ( )。 ( A) coutA表达式可输出字符 A ( B) eof()函数可以检测是否到达文件尾 ( C)对磁盘文件进行流操作时,必须包含头文件 fstream ( D)以 ios_base:out模式打开的文件不存在时,将自动建立一个新文件 3 语句 int*p=定义了指针 p,与这个语句等效的语

2、句序列是 ( )。 ( A) int*p;p= ( B) int*p;p=k; ( C) int*p;*p= ( D) int*p;*p=k; 4 有如下两个类定义: class XX private: double x1; protected: double x2; public: double x3; ; class YY: protected XX private: double y1; protected: double y2; public: double y3; ; 在类 YY中保护成员变量的个数是 ( )。 ( A) 1 ( B) 2 ( C) 3 ( D) 4 5 下列关于线性

3、链表的叙述中,正确的是 ( )。 ( A)各数据结点的存储空间可以不连续,但它们的存储顺序与逻辑顺序必须一致 ( B)各数据结点的存储顺序与逻辑顺序可以不一致,但它们的存储空间必须连续 ( C)进行插入与删除时,不需要移动表中的元素 ( D)以上说法均不正确 6 在 C+中,用来 取代中的预处理宏函数的是 ( A)重载函数 ( B)友元函数 ( C)递归函数 ( D)内联函数 7 已知 Bag是一个类,并有函数 FBag定义如下: Void FBag() Bag *ptr, my, colleage2, 则在调用函数 FBag()后, Bag 类的析构函数被调用的次数是 ( A) 2次 ( B

4、) 3次 ( C) 4次 ( D) 5次 8 对长度为 10的线性表进行冒泡排序,最坏情况下需要比较的次数为 ( A) 9 ( B) 10 ( C) 45 ( D) 90 9 有如下函数原型: int func(int *a, int *b, int 其中可称为引用参数的参数变量是 ( A) a ( B) b ( C) c ( D) d 10 有如下类定义: class Shape public: _ /虚函数 Draw 的声明 ; 横线处缺失的虚函数 Draw的声明是 ( A) virtualvoidDraw(); ( B) voidvirtualDraw(); ( C) voidDraw(

5、)virtual; ( D) voidDraw(virtual); 11 下面不属于黑盒测试方法的是 ( A)边界值分析法 ( B)基本路径测试 ( C)等价类划分法 ( D)错误推测法 12 p是指向 ClassA类型对象的指针。执行 deletep;时,系统自动调用 ( A)析构函数 ( B)构造函数 ( C)静态函数 ( D)友元函数 13 下列关于函数模板的表述中,正确的是 ( A)当函数形 参表为空时,可以省略两边的括号 ( B)当函数形参表为空时,可以省略两边的括号 ( C)模板实参表要用圆括号括起来 ( D)在一定条件下模板实参表可以被省略 14 下面不属于对象主要特征的是 (

6、A)唯一性 ( B)多态性 ( C)可复用性 ( D)封装性 15 如下类定义: class AA int a; public: int getRef()const return / int getValue()const return a; / void set(int n)const a=n; / friend void show(AA aa)const cout using namespace std; void fun(char c) cout #include using namespace std; class Person public: Person(string n):nam

7、e(n) cout using namespace std; class AA public: AA() cout using namespace std; class B public: virtual void show() coutshow(); void fun2(B void fun3(B b) b.show(); int main() B b,*p=new D; D d; fun1(p); fun2(b); fun3(d); delete p; return 0; 执行这个程序的输出结果是 ( )。 ( A) BBB ( B) BBD ( C) DBB ( D) DBD 36 下列

8、语句中,正确的是 ( A) charstr=“abcde“; ( B) char*str=“abcde“; ( C) charstr5=“abcde“; ( D) char*str5=“abcde“; 37 有如下程序 : #include #include using namespace std; class MyBag public: MyBag(string br,string cr):brand(br),color(cr) +count; MyBag() -count; static int GetCount() return count; private: string brand,

9、color; static int count; ; int MyBag:count=0; int main() MyBag one(“CityLife“,“Gray“),two(“Micky“,“Red“); cout using namespace std; class TV public: TV(int s=41):size(s) TV(const TV ; TV fun(TV return t; int main() TV x,y; x=fun(y); return 0; 则 TV类的复制构造函数被调用的次数是 ( A) 1次 ( B) 2次 ( C) 3次 ( D) 4次 40 下列

10、关于运算符重载的叙述中,正确的是 ( A)可以通过重载创造出新的运算符 ( B)可以为重载运算符函数的参数设置默认值 ( C)可以将部分运算符函数重载为非成员函数 ( D)可以将任意运算符函数重载为静态成员函数 二、基本操作题 41 请使用 VC6或使用【答题】菜单打开考生文件夹 proj1下的工程 pmjl,此工程中含有一个源程序文件 pmj1 cpp。 其中位于每个注释 “ ERROR*found*”之后的一行语句存在错误。请改正这些错误,使程序的输出结果为: Thevalueofmemberobjectsis8 注意:只修改注释 “ ERROR*found*”的下一行语句,不要改动程序中

11、的其他内容。 proj1 cpp #include usingnamespacestd; ClaSsHember public: Hember(intx)val=x; intGetData()returnval; private: ERROR*found* intval=0; ; classHyClass public: ERROR*found* HyClass(intX)data=x; voidPrint() ERROR*found* cout usingnamespacestd; classDepartment “部门 ”类 public: Department(constchar*nam

12、e, constchar*office) strcpy(this-name, name); *found* constchar*getName()constreturnname; )返回部门名称 *found* constchar*getOffice()const _返回办公室房号 voidchangeOfficeTo(constchar*office)改换为指定房号的另一个办公室 strcpy(this-office, office); private: charname20;部门名称 charoffice20;部门所在办公室房号 ; classStaff “职工 ”类 public: *f

13、ound* Staff(constchar*my_id, const char*my_name, Department (2)MyClass(int x) : data(x) (3) coutoffice, office); (2)returnoffice; (3)dept(my_dept) (4)dept changeOfficeTo(“311“); 【试题解析】 (1)主要考查考生对 strcpy函数的掌握情况,根据上一条语句:strcpy(this-name, name);可知,这条语句复制的是 office,即 strcpy(this-office, office);。 (2)主要考查考生对成员函数的掌握情况,根据语句的注释:返回办公室房号可知,要填写的是一条 return语句。在私有成员里: charoffice20;部门所在办公室房号,表明 office即为办公室房号。因此直接返回 office即可。 (3)主要考查考生对构造函数的掌握情况,根据函数体: strcpy(this-staff_id, my_id); strcpy(this-name, my_name);

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 考试资料 > 职业资格

copyright@ 2008-2019 麦多课文库(www.mydoc123.com)网站版权所有
备案/许可证编号:苏ICP备17064731号-1