【计算机类职业资格】二级C++笔试5及答案解析.doc
《【计算机类职业资格】二级C++笔试5及答案解析.doc》由会员分享,可在线阅读,更多相关《【计算机类职业资格】二级C++笔试5及答案解析.doc(12页珍藏版)》请在麦多课文档分享上搜索。
1、二级 C+笔试 5及答案解析(总分:98.00,做题时间:90 分钟)一、B选择题/B(总题数:35,分数:70.00)1.语句 ofstream f(“SALARYDAT“,ios:appios:binary);的功能是建立流对象 f,试图打开文件 SALARYDAT 并与之连接,并且(分数:2.00)A.若文件存在,将文件写指针定位于文件尾;若文件不存在,建立一个新文件B.若文件存在,将其置为空文件;若文件不存在,打开失败C.若文件存在,将文件写指针定位于文件首;若文件不存在,建立一个新文件D.若文件存在,打开失败;若文件不存在,建立一个新文件2.下面程序错误的语句是 # include
2、iostreamh void main( ) int * p=new int1; p=9; cout * p endl; delete p; (分数:2.00)A.B.C.D.3.可以用 p.a的形式访问派生类对象 p的基类成员 a,其中 a是(分数:2.00)A.私有继承的公有成员B.公有继承的私有成员C.公有继承的保护成员D.公有继承的公有成员4.SQL语言又称为(分数:2.00)A.结构化定义语言B.结构化控制语言C.结构化查询语言D.结构化操纵语言5.下面对静态数据成员的描述中,正确的是(分数:2.00)A.静态数据成员是类的所有对象共享的数据B.类的每个对象都有自己的静态数据成员C.
3、类的不同对象有不同的静态数据成员值D.静态数据成员不能通过类的对象调用6.程序设计语言的基本成分是数据成分、运算成分、控制成分和(分数:2.00)A.对象成分B.变量成分C.语句成分D.传输成分7.下列叙述中,不属于软件需求规格说明书的作用的是(分数:2.00)A.便于用户、开发人员进行理解和交流B.反映出用户问题的结构,可以作为软件开发工作的基础和依据C.作为确认测试和验收的依据D.便于开发人员进行需求分析8.下面关于数组的描述错误的是(分数:2.00)A.在 C+语言中数组的名字就是指向该数组第一个元素的指针B.长度为 n的数组,下标的范围是 0n-1C.数组的大小必须在编译时确定D.数组
4、只能通过值参数和引用参数两种方式传递给函数9.以下程序中,错误的行为 # include iostream.h class A public: int n=2; A(int val) cout val endl; A( ) ; ;void main( ) A a(0); (分数:2.00)A.B.C.D.10.如果类 A被说明成类 B的友元,则(分数:2.00)A.类 A的成员即类 B的成员B.类 B的成员即类 A的成员C.类 A的成员函数不得访问类 B的成员D.类 B不一定是类 A的友元11.在 C+语言中,数据封装要解决的问题是(分数:2.00)A.数据的规范化B.便于数据转换C.避免数据
5、丢失D.防止不同模块之间数据的非法访问12.树是结点的集合,它的根结点数目是(分数:2.00)A.有且只有 1B.1或多于 1C.0或 1D.至少 213.下列程序的输出结果为 # include iostreamh int func(int n) if (n1)return 1; else return n + func (n-1); return 0; void main( ) cout func (5) endl; (分数:2.00)A.0B.10C.15D.1614.不能作为重载函数的调用的依据是(分数:2.00)A.参数个数B.参数类型C.函数类型D.函数名称15.下面的哪个选项不能
6、作为函数的返回类型?(分数:2.00)A.voidB.intC.newD.long16.将 E-R图转换到关系模式时,实体与联系都可以表示成(分数:2.00)A.属性B.关系C.键D.域17.下列描述正确的是(分数:2.00)A.表示 m n 为 true或 m n 为 true的表达式为 m n m nB.switch语句结构中必须有 default语句C.if 语句结构中必须有 else语句D.如果至少有一个操作数为 true,则包含“”运算符的表达式为 true18.下面关于虚函数的描述,错误的是(分数:2.00)A.在成员函数声明的前面加上 virtual修饰,就可把该函数声明为虚函数
7、B.基类中说明了虚函数后,派生类中对应的函数也必须说明为虚函数C.虚函数可以是另一个类的友元函数,但不能是静态成员函数D.基类中说明的纯虚函数在其任何派生类中都必须实现19.对类的构造函数和析构函数描述正确的是(分数:2.00)A.构造函数可以重载,析构函数不能重载B.构造函数不能重载,析构函数可以重载C.构造函数可以重载,析构函数也可以重载D.构造函数不能重载,析构函数也不能重载20.设 int a=10,b= 11,c=12;,表达式( a + b) c b= =c 的值是(分数:2.00)A.2B.0C.-2D.121.下列程序的运行结果为 # include iostreamh int
8、 i=0; classA public: A( ) i + + ; ; void main( ) A a,b3,* c; C=b; cout i endl; (分数:2.00)A.2B.3C.4D.522.如果进栈序列为 e1,e2,e3,e4,则可能的出栈序列是(分数:2.00)A.e3,e1,e4,e2B.e2,e4,e3,elC.e3,e4,e1,e2D.任意顺序23.下面关于模板的描述,错误的是(分数:2.00)A.函数模板和类模板的参数可以是任意的数据类型B.类模板不能直接使用,必须先实例化为相应的模板类,然后定义了模板类的对象后才能使用C.函数模板不能直接使用,需要实例化为模板函数
9、后才能使用D.类模板的成员函数都是模板函数24.下面关于 break语句的描述中,不正确的是(分数:2.00)A.break可以用于循环体内B.break语句可以在 for循环语句中出现多次C.break语句可以在 switch语句中出现多次D.break语句可用于 if条件判断语句内25.在设计程序时,应采纳的原则之一是(分数:2.00)A.不限制 goto 语句的使用B.减少或取消注解行C.程序越短越好D.程序结构应有助于读者理解26.下面关于类和对象的描述中,错误的是(分数:2.00)A.类就是 C语言中的结构体类型,对象就是 C语言中的结构体变量B.类和对象之间的关系是抽象和具体的关系
10、C.对象是类的实例,一个对象必须属于一个已知的类D.类是具有共同行为的若干对象的统一描述体27.以下各选项组中,均是 C+语言关键字的组是(分数:2.00)A.public operator thisB.shod string staticC.it while =D.private cout printf28.已知一棵二叉树前序遍历和中序遍历分别为 ABDEGCFH 和 DBGEACHF,则该二叉树的后序遍历为(分数:2.00)A.GEDHFBCAB.DGEBHFCAC.ABCDEFGHD.ACBFEDHG29.下列语句中不是死循环的是(分数:2.00)A.int i=10; while(1)
11、 i; if(i= =1)break; B.for(int i=1;i n|mn;选项 B)中 default语句可有可无;选项 C)中 if可以单独作为一条语句,不必须和 else搭配。18.下面关于虚函数的描述,错误的是(分数:2.00)A.在成员函数声明的前面加上 virtual修饰,就可把该函数声明为虚函数B.基类中说明了虚函数后,派生类中对应的函数也必须说明为虚函数 C.虚函数可以是另一个类的友元函数,但不能是静态成员函数D.基类中说明的纯虚函数在其任何派生类中都必须实现解析:解析:基类中说明的虚函数,在派生类中自然就是虚函数,对于纯虚函数必须在后面继承的派生类中给出具体的实现;静态
12、成员函数不能进行动态联编,所以虚函数不能是静态的。19.对类的构造函数和析构函数描述正确的是(分数:2.00)A.构造函数可以重载,析构函数不能重载 B.构造函数不能重载,析构函数可以重载C.构造函数可以重载,析构函数也可以重载D.构造函数不能重载,析构函数也不能重载解析:解析:一个类中只能定义一个析构函数,否则会造成对同一对象的多次删除;而构造函数可以根据不同的参数个数和类型进行多次重载。20.设 int a=10,b= 11,c=12;,表达式( a + b) c b= =c 的值是(分数:2.00)A.2B.0 C.-2D.1解析:解析:本题考查的是运算符的优先级,应该先计算 a+b的值
13、为 21,然后与 c比较大小的值为 0,根据“”的运算规则,整个表达式的值为 0。21.下列程序的运行结果为 # include iostreamh int i=0; classA public: A( ) i + + ; ; void main( ) A a,b3,* c; C=b; cout i endl; (分数:2.00)A.2B.3C.4 D.5解析:解析:外部变量 i实际上记录的是调用构造函数的次数。22.如果进栈序列为 e1,e2,e3,e4,则可能的出栈序列是(分数:2.00)A.e3,e1,e4,e2B.e2,e4,e3,el C.e3,e4,e1,e2D.任意顺序解析:解析
14、:由栈“后进先出”的特点可知:选项 A)中 e1不可能比 e2先出,选项 C)中 e3不町能比 e4先出,且 e1不町能比 e2先出,选项 D)中栈是先进后出的,所以不可能是任意顺序。选项 B)中出栈过程如图所示:23.下面关于模板的描述,错误的是(分数:2.00)A.函数模板和类模板的参数可以是任意的数据类型 B.类模板不能直接使用,必须先实例化为相应的模板类,然后定义了模板类的对象后才能使用C.函数模板不能直接使用,需要实例化为模板函数后才能使用D.类模板的成员函数都是模板函数解析:解析:类模板不能被重载,而函数模板可以,它们不能被未知的数据类型替换。24.下面关于 break语句的描述中
- 1.请仔细阅读文档,确保文档完整性,对于不预览、不比对内容而直接下载带来的问题本站不予受理。
- 2.下载的文档,不会出现我们的网址水印。
- 3、该文档所得收入(下载+内容+预览)归上传者、原创作者;如果您是本文档原作者,请点此认领!既往收益都归您。
下载文档到电脑,查找使用更方便
5000 积分 0人已下载
下载 | 加入VIP,交流精品资源 |
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 计算机 职业资格 二级 笔试 答案 解析 DOC
