出国留学网

目录

2017年12月计算机二级考试习题及答案:C++

【 liuxue86.com - 计算机二级 】

  11 [单选题] 有如下程序:

2017年12月计算机二级C++考试冲刺模拟试卷(1)

  运行后的输出结果是( )。

  A.2351

  B.2531

  C.5354

  D.5534

  参考答案:B

  参考解析:

  main()函数中调用了B的构造函数,参数为5,接下来B类对象b的构造过程如下:①调用基类A的默认构造函数,构造对象b的基类部分:初始化m_i为2。②按照B类中成员的定义顺序,使用成员初始化列表初始化两个A类成员:首先执行m_a1(m_i+1),m_i为基类A中的成员,此时值为2,调用A类的默认构造函数,初始化m_a1.m_i为3;然后执行m_a2(n),调用A类的默认构造函数,初始化m_a2.m_i为5。接着main()执行return语句,此时对象b需要调用析构函数进行释放,释放过程如下:①首先运行B类的析构函数-B(),输出m_i的值为2,然后将m_i自减1,使得m_i的值为1。②按照8类中成员定义顺序的反顺序,首先调用m_a2的析构函数~A(),释放对象m a2,输出m_a2.m_i的值5;再调用m_a1的析构函数~A(),释放对象m_a1,输出m_a1.m_i的值3。③最后调用基类A的析构函数-A(),释放b对象中的基类部分,输出m_i的值1。 由上分析,程序运行结果为:2531。故本题答案为B选项。

  12 [单选题] 有如下程序段:

2017年12月计算机二级C++考试冲刺模拟试卷(1)

  上述程序使得derived对象中的动态内存空间有可能不被释放,有内存泄漏风险,原因是( )。

  A.base类是抽象类

  B.derived类的析构函数没有释放基类的动态内存

  C.base类的析构函数不是虚函数

  D.derived类的resoulce与公有继承得到的resource同名

  参考答案:C

  参考解析:

  基类base中的数据成员resource为整型指针变量,派生类derived中的数据成员resource与基类base中的同名,但类型为浮点型指针变量,基类base中构造函数使用new为resource(整型指针)分配了内存空间,在析构函数中释放;派生类derived的构造函数在成员初始化类表中调用base的构造函数构造对象的基类部分,然后在构造函数体内使用new为resource(浮点型指针)分配了内存空间,在析构函数中释放浮点型resource指针;由于基类base中的析构函数未定义为虚函数,所以派生类derived中的析构函数在被调用时,不会再调用基类base中的析构函数,导致基类base中的整型指针变量resource无法释放,造成内存泄漏。故本题答案为C选项。

  13 [单选题] 下列关于抽象类的叙述中,错误的是( )。

  A.不能定义抽象类对象

  B.抽象类中一定包含纯虚函数

  C.抽象类的派生类一定不是抽象类

  D.抽象类的构造函可以是protected函数

  参考答案:C

  参考解析:

  含有一个或多个纯虚函数的类是抽象类,不能创建抽象类的对象,选项A、B正确;由于无法创建(也不需要创建)抽象类的对象,所以抽象类的构造函数可以是protected函数,选项D正确;抽象类的派生类,如果也包含纯虚函数,那么该派生类也是抽象类,选项C错误。故本题答案为C选项。

  14 [单选题] 一个工作人员可以使用多台计算机,而一台计算机可被多个人使用,则实体工作人员与实体计算机之间的联系是( )。

  A.一对一

  B.一对多

  C.多对多

  D.多对一

  参考答案:C

  参考解析:

  因为一个人可以操作多个计算机,而一台计算机又可以被多个人使用,所以两个实体之间是多对多的关系。

  15 [单选题] 有如下程序:

2017年12月计算机二级C++考试冲刺模拟试卷(1)

  执行这个程序的输出结果是( )。

  A.1B

  B.1D

  C.2B

  D.2D

  参考答案:B

  参考解析:

  在某基类中声明为virtual并在一个或多个派生类中被重新定义的成员函数,本题中定义了一个指向派生类对象的基类指针ptr,执行ptr->output后,会执行基类的output函数,输出1,由于Print是虚函数,所以ptr->Print()会执行派生类的Print,即输出D,所以本题答案为B。

  16 [单选题] 层次型、网状型和关系型数据库划分原则是( )。

  A.记录长度

  B.文件的大小

  C.联系的复杂程度

  D.数据之间的联系方式

  参考答案:D

  参考解析:

  层次模型的基本结构是树形结构,网状模型是一个不加任何条件限制的无向图,关系模型采用二维表来表示,所以三种数据库的划分原则是数据之间的联系方式。

  17 [单选题] C++中的模板包括( )。

  A.对象模板和函数模板

  B.对象模板和类模板

  C.函数模板和类模板

  D.变量模板和对象模板

  参考答案:C

  18 [单选题] 现有表示患者和医疗的关系如下:P(P#,Pn,Pg,By),其中P#为患者编号,Pn为患者姓名,Pg为性别,By为出生日期,Tr(P#,D#,Date,Rt),其中D#为医生编号,Date为就诊日期,Rt为诊断结果。检索在1号医生处就诊的病人姓名的表达式是( )。

2017年12月计算机二级C++考试冲刺模拟试卷(1)

  参考答案:A

  参考解析:

  π表示投影运算,针对属性;σ表示选择运算,针对元组;▷◁表示自然连接。首先在Tr表中选择D#为1的记录σD#=1(Tr),并检索这些记录中患者的编号πp#(σD#=1(Tr)),检索结果与表P进行自然连接生成中间表计πP#(σD#=1(Tr))▷◁P,最后在中间表中检索患者的姓名πPn(πP#(σD#=1(Tr))▷◁P)。故本题答案为A选项。

  19 [单选题] 下列选项中不属于结构化程序设计原则的是( )。

  A.可封装

  B.自顶向下

  C.模块化

  D.逐步求精

  参考答案:A

  参考解析:

  结构化程序设计的思想包括:自顶向下、逐步求精、模块化、限制使用goto语句,所以选择A。

  20 [单选题] 已知函数模板定义如下:

2017年12月计算机二级C++考试冲刺模拟试卷(1)

  不能由该函数模板得到的函数实例是( )。

  A.int min(int,int)

  B.char min(char,char)

  C.double min(int,double)

  D.double min(double,double)

  参考答案:C

  参考解析:

  题意中的模板函数min()接收两个参数,参数类型都是T,返回一个T类型的值,所以min()函数的参数、返回值都必须是同一类型,由此可知选项A、B、D可正确得到函数实例,选项C不可以。故本题答案为C选项。

  想了解更多计算机二级网的资讯,请访问: 计算机二级

本文来源:https://jsj.liuxue86.com/a/3484320.html
延伸阅读
    想必要考试的考生,对快捷键还是有敏感的,快捷键不仅使你考试能做题快一些,在平时设计网站时也是有很大的帮助的,在这里预祝即将考试的考生
2019-01-02
漂亮的Flash动画人人喜欢,不过制作起来的确有一些技术难度。你知道吗,Dreamweaver作为一个网页制作工具,还可以创建好玩的Flash相册。小编整理了一些Flash相册的资
2019-01-02
    滚动字幕会让很多人感到兴奋,特别是第一次使用滚动字幕时,会爱不释手。现在做一个详细的方案,让你更全面地了解一下。小编整理了一些滚动字
2019-01-02
你准备好计算机等级考试了么?小编为大家提供“2018年12月计算机二级Java冲刺题及答案3”供广大考生参考,希望帮到您!更多计算机等级考试的资讯请关注我们网站的更新哦!2018年
2018-11-28
本网站计算机考试栏目小编为考生们整理了“2018年12月计算机二级Java冲刺题及答案2”,希望有所帮助,更多计算机等级考试信息请关注本网站的及时更新哦。祝同学们金榜题名!2018
2018-11-28
计算机等级考试栏目小编精心为您收集整理了《2018年12月计算机二级Java冲刺题及答案1》,希望给您带来帮助!更多精彩内容尽在本站,请持续关注。祝您考试顺利哦!2018年12月计
2018-11-28
    我们都想知道在学习计算机语言中的C语言,最重要的就是字符串了,小编整理了关于C语言的一些知识点,对你的计算机考试会有帮助的,想了解更
2019-01-02
三层模式是体系结构模式,MVC是设计模式,考生们应该常见吧,小编为你整理了一些关于JavaBean的资料,供程序员参考,希望能对你有所帮助!计算机二级考试-Web前端程序设计(Ja
2019-01-02