【计算机类职业资格】二级C++分类模拟265及答案解析.doc
《【计算机类职业资格】二级C++分类模拟265及答案解析.doc》由会员分享,可在线阅读,更多相关《【计算机类职业资格】二级C++分类模拟265及答案解析.doc(16页珍藏版)》请在麦多课文档分享上搜索。
1、二级 C+分类模拟 265 及答案解析(总分:59.50,做题时间:90 分钟)一、选择题(总题数:35,分数:59.50)1.执行下列语句段后,输出字符“*”的个数是_。 for(int i=50;i1;i-=2)cout“*“;(分数:1.00)A.24B.25C.26D.502.有如下说明 int a10=1,2,3,4,5,6,7,8,9,10,*p=a; 则数值为 9 的表达式是_。(分数:2.00)A.*p+9B.*(p+8)C.*p+=9D.p+83.一个工作人员可以使用多台计算机,而一台计算机可被多个人使用,则实体工作人员与实体计算机之间的联系是_。(分数:1.00)A.一对一
2、B.一对多C.多对多D.多对一4.下列排序方法中,最坏情况下时间复杂度(即比较次数)低于 O(n 2 )的是_。(分数:1.00)A.快速排序B.简单插入排序C.冒泡排序D.堆排序5.有如下程序: #includeiostream using namespace std; class B public: virtual void show()cout“B“; ; class D:public B public: void show()cout“D“; ; void fun1(B *ptr)ptr-show(); void fun2(B void fun3(B b)b.show(); int m
3、ain() B b.*p=new D; D d; fun1(p); fun2(b); fun3(d); return 0; 程序的输出结果是_。(分数:2.00)A.BBBB.BBDC.DBBD.DBD6.要定义一个引用变量 p,使之引用类 MyClass 的一个对象,正确的定义语句是_。(分数:2.50)A.MyClass p=MyClass;B.MyClass p=new MyClass;C.MyClassD.MyClass a, 7.下列关于运算符重载的描述中,错误的是_。(分数:2.50)A.可以通过运算符重载在 C+中创建新的运算符B.赋值运算符只能重载为成员函数C.运算符函数重载为
4、类的成员函数时,第一操作数是该类对象D.重载类型转换运算符时不需要声明返回类型8.下列叙述中正确的是 _ 。(分数:2.00)A.线性链表的各元素在存储空间中的位置必须是连续的B.线性链表的头元素一定存储在其他元素的前面C.线性链表中的各元素在存储空间中的位置不一定是连续的,但表头元素一定存储在其他元素的前面D.线性链表中的各元素在存储空间中的位置不一定是连续的,且各元素的存储顺序也是任意的9.下列语句中,错误的是_。(分数:1.00)A.const int buffer=256;B.const double*point;C.int const buffer=256;D.double*cons
5、t point;10.有以下类定义: class Point public: Point(int x=0,int y=0)_x=x; _y=y; void Move(int x Off, int y Off) _x+=x Off; _y+=y Off; void Print() const cout “(“ _x “,“ _y “)“ end 1; private: int _x,_y; 下列语句中会发生编译错误的是_。(分数:2.00)A.Point pt; pr. Print();B.const Point pt; pt. Print();C.Point pt; pt. Move(1,2)
6、;D.const Point pt; pt. Move(1,2);11.在下列枚举符号中,用来表示“相对于当前位置”文件定位方式的是_。(分数:2.00)A.ios_base:curB.ios_base:begC.ios_base:outD.ios_base:end12.有如下说明: int a10=1,2,3,4,5,6,7,8,9,10,*p=a; 则数值为 9 的表达式是_。(分数:1.00)A.*p+9B.*(p+8)C.*p+=9D.p+813.层次型、网状型和关系型数据库划分原则是_。(分数:1.00)A.记录长度B.文件的大小C.联系的复杂程度D.数据之间的联系方式14.下列关于
7、运算符重载的叙述中,正确的是_。(分数:2.50)A.通过运算符重载机制可以为 C+语言扩充新的运算符B.运算符重载的作用是使已有的运算符作用于类的对象C.重载运算符的操作数类型可以全部为基本类型D.所有运算符都可以被重载15.有如下类定义: class Test public: Test()a=0;c=0;/ int f(int a)constthis-a=a;/ static int g()return a;/ voidh(intb)Test:b=b;/ private: int a; static int b; const int c; ; int Test:b=0; 在标注号码的行中,
8、能被正确编译的是_。(分数:1.00)A.B.C.D.16.设 int x =2,4,6,8,y,*p= class Publication/出版物类 char name30; public: Publication(char*name=“未知名称“) strcpy(this-name,name); const char*getName()constreturn name;) virtual const char*getType()constreturn“未知类型“; ; class Book:public Publication/书类 public: Book(char*namc):Publ
9、ication(name) viriual const char*getType()constreturn “书“; ; void showPublication(Publicationp) coutp.getType()“:“p.getName()endl; int main() Book book(“精彩人生“); showPublication(book); return 0; 运行时的输出结果是_。(分数:2.50)A.未知类型:未知名称B.未知类型:精彩人生C.书:未知名称D.书:精彩人生20.下列关于宏的叙述中正确的是_。(分数:2.50)A.宏名必须用大写字母表示B.宏定义必须位
10、于源程序中所有语句之前C.宏替换没有数据类型限制D.宏调用比函数调用耗费时间21.若有定义语句“int i=2,j=3;”,则表达式 i/j 的结果是_。(分数:1.00)A.0B.0.7C.0.66667D.0.6666666722.有如下程序: # include ioslreclm Using namespace std; class Base public: Base(int x=0):valB(x)coutvalB; Base()coutvalB; Private: int valB; ; class, Derived: public Base public: Dcrived(int
11、 x=0,int y=0):Base(x),valD(y) coutvalD; Derived()coutvalD; private: int valD; ; int main() Derived obj12(2,3); return 0; 运行时的输出结果是 _ ,(分数:2.50)A.2332B.2323C.3232D.322323.下列模板声明中,有语法错误的是_。(分数:1.00)A.templatetypename TT fun(T x)return x;B.templatetypename TT fun(T x,int n)return x*n;C.templateclass TT
12、 fun(T *p)return *p;D.templateclass TT ctassAT n;24.以下程序的运行结是_。 #includeiostream using namespace std ; class Base char c; public : Base( char c0):c( c0) Base( )coutc; ; class Derived:public Base char c: public: Derived( char c0): Base(c0+1) ,c(c0) Derived()coute; ; int main() Derived obj(“x“); retur
13、n 0: (分数:2.00)A.xyB.yxCxDy25.已知在一个类体中包含如下函数原型:VOLUME operator-(VOLUME)const;,下列关于这个函数的叙述中,错误的是(分数:2.00)A.这是运算符一的重载运算符函数B.这个函数所重载的运算符是一个一元运算符C.这是一个成员函数D.这个函数不改变类的任何数据成员的值26.当使用 fstram 流类定义一个流对象并打开一个磁盘文件时,文件的隐含打开方式为(分数:2.00)A.ios:inB.ios:outC.ios:int | ios:outD.没有27.下面程序的运行结果是 _ 。 #includeiostream.h v
14、oid main() int i=1; while(i=8) if(+i%3!=2)continue; else couti; (分数:2.00)A.25B.36C.258D.36928.关于运算符重载,下列表述中正确的是_。(分数:1.00)A.C+已有的任何运算符都可以重载B.运算符函数的返回类型不能声明为基本数据类型C.在类型转换符函数的定义中不需要声明返回类型D.可以通过运算符重载来创建 C+中原来没有的运算符29.以下四种说法中,正确的一项是 _ 。(分数:2.00)A.C+允许在字符串上进行整体操作B.语句:char vn =“Brown“;将 vn 定义成一个有 5 个元素的数组
15、,因为“Brown“ 中含有 5 个字符C.对指针只要赋给一个地址值就可以了D.一维的指针数组实际上是一个二维数组30.若有如下程序: #includeiostream using narnespace std; class TestClass public: void who()cout“TestClass“endl; ; class TestClassl: public TestClass public: void who()cout“TestClass1“endl; int main() TestClass*p; TcstClass1 obj1; p=obj1; p-who(); ret
16、urn 0; 则该程序运行后的输出结果是_。(分数:1.00)A.TestClasslB.TestClassC.0D.无输出31.索引属于_。(分数:2.50)A.模式B.内模式C.外模式D.概念模式32.下列函数原型声明中,错误的是_。(分数:2.00)A.int function(int m,int n);B.int function(int,int);C.int function(int m=3,int n);D.int function(int33.耦合性和内聚性是对模块独立性度量的两个标准。下列叙述中正确的是_。(分数:1.00)A.提高耦合性降低内聚性有利于提高模块的独立性B.降低
17、耦合性提高内聚性有利于提高模块的独立性C.耦合性是指一个模块内部各个元素间彼此结合的紧密程度D.内聚性是指模块间互相连接的紧密程度34.下面程序的输出结果是 _ 。 #includeiostream #includestring using namespace std; void main() charp110,p210; strcpy(p1,“abc“); strcpy(p2,“ABC“); charstr50=“xyz“; strcpy(str+2,strcat(p1,p2); coutstr; (分数:2.00)A.xyabcABCB.yzabcABCC.xyzabcABCD.zabcA
18、BC35.下列关于 C+流的描述中,错误的是 _ 。(分数:2.00)A.cout“A“表达式中输出字符 AB.eof 函数可以检测是否到达文件尾C.对磁盘文件进行流操作时,必须包含头文件 fstreamD.以 ios_base:out 模式打开的文件不存在时,将自动建立一个新文件二级 C+分类模拟 265 答案解析(总分:59.50,做题时间:90 分钟)一、选择题(总题数:35,分数:59.50)1.执行下列语句段后,输出字符“*”的个数是_。 for(int i=50;i1;i-=2)cout“*“;(分数:1.00)A.24B.25 C.26D.50解析:解析 本题考查 for 循环语
19、句,题目中每执行完循环体后,i 都会减 2,那么只有 50 到 2 之间的偶数才能输出“*”,所以总共输出 25 次。2.有如下说明 int a10=1,2,3,4,5,6,7,8,9,10,*p=a; 则数值为 9 的表达式是_。(分数:2.00)A.*p+9B.*(p+8) C.*p+=9D.p+8解析:解析 此题考查的是指针的运用。选项 A 中,*p 返回的是数组元素 a0的值,所以最后结果是1+9=10;选项 B 是指针 p 后移 8 个单位位置处的值,即 a8其值为 9;选项 C 中表达式的值和选项 A 相同;选项 D 的值是一个地址值,该值无法确定。3.一个工作人员可以使用多台计算
20、机,而一台计算机可被多个人使用,则实体工作人员与实体计算机之间的联系是_。(分数:1.00)A.一对一B.一对多C.多对多 D.多对一解析:解析 因为一个人可以操作多个计算机,而一台计算机又可以被多个人使用,所以两个实体之间是多对多的关系。4.下列排序方法中,最坏情况下时间复杂度(即比较次数)低于 O(n 2 )的是_。(分数:1.00)A.快速排序B.简单插入排序C.冒泡排序D.堆排序 解析:解析 对长度为 n 的线性表排序,常用排序方法最坏情况的时间复杂度如下表所示 方法 最坏情况时间 冒泡排序 O(n 2 ) 简单插入排序 O(n 2 ) 简单选择排序 O(n 2 ) 快速排序 O(n
21、2 ) 堆排序 O(nlog 2 n) 时间复杂度低于 O(n 2 )的排序算法是堆排序,故 D 选项正确。5.有如下程序: #includeiostream using namespace std; class B public: virtual void show()cout“B“; ; class D:public B public: void show()cout“D“; ; void fun1(B *ptr)ptr-show(); void fun2(B void fun3(B b)b.show(); int main() B b.*p=new D; D d; fun1(p); fu
- 1.请仔细阅读文档,确保文档完整性,对于不预览、不比对内容而直接下载带来的问题本站不予受理。
- 2.下载的文档,不会出现我们的网址水印。
- 3、该文档所得收入(下载+内容+预览)归上传者、原创作者;如果您是本文档原作者,请点此认领!既往收益都归您。
下载文档到电脑,查找使用更方便
5000 积分 0人已下载
下载 | 加入VIP,交流精品资源 |
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 计算机 职业资格 二级 分类 模拟 265 答案 解析 DOC
