【计算机类职业资格】二级C++笔试-260及答案解析.doc
《【计算机类职业资格】二级C++笔试-260及答案解析.doc》由会员分享,可在线阅读,更多相关《【计算机类职业资格】二级C++笔试-260及答案解析.doc(21页珍藏版)》请在麦多课文档分享上搜索。
1、二级 C+笔试-260 及答案解析(总分:106.00,做题时间:90 分钟)一、选择题(总题数:35,分数:76.00)1.下列定义中 p 指向的地址可更改,但* p 不能够更改的是(分数:2.00)A.const int *p;B.int * const p;C.const int *const p;D.int *p;2.软件开发离不开系统环境资源的支持,其中必要的测试数据属于(分数:2.00)A.硬件资源B.通信资源C.支持软件D.辅助资源3.以下叙述正确的是(分数:2.00)A.函数可以嵌套定义但不能嵌套调用B.函数既可以嵌套调用也可以嵌套定义C.函数既不可以嵌套定义也不可以嵌套调用D
2、.函数可以嵌套调用但不可以嵌套定义4.有以下程序#includevoid fun(int a,int b,int C) a=456,b=567,c=678;void main( )int x=10,y=20,z=30;fun(x,y,z);cout x , y , z end1;输出结果是(分数:2.00)A.30,20,10B.10,20,30C.456,567,678D.678,567,456假定 int 类型变量占用两个字节,其有定义 int x l0= 0,2,4 ;,则数组 x 在内存中所占字节数是(分数:4.00)A.3B.6C.10D.20A.B.C.D.5.如果表达式 x *
3、y + z 中,“ * ”是作为友元函数重载的,“+”是作为友元函数重载的,则该表达式还可为(分数:2.00)A.operator+(operator*(x,y),z)B.operator+(operator*(x,y),z)C.operator*(operator+(x,y),z)D.operator+(operator*(x,y)6.下列描述中,抽象类的特性是(分数:2.00)A.可以说明虚函数B.可以定义友元函数C.可以进行构造函数重载D.不能说明其对象7.在单链表中,增加头结点的目的是(分数:2.00)A.方便运算的实现B.使单链表至少有一个结点C.标识表结点中首结点的位置D.说明单链
4、表是线性表的链式存储实现8.关于二义性的描述错误的是(分数:2.00)A.一个子类的两个父类中都有某个同名成员,在子类中对该成员访问可能出现二义性B.解决二义性可以用对成员名的限定法C.父类和子类中同时出现同名函数,也可能存在二义性D.一个子类是从两个父类派生出来的,而这两个父类又有一个共同的父类,对该父类成员进行访问时,可能出现二义性9.下面有关 for 循环的正确描述是(分数:2.00)A.for 循环只能用于循环次数已经确定的情况B.for 循环是先执行循环体语句,后判断表达式C.在 for 循环中,不能用 break 语句跳出循环体D.for 循环的循环体语句中,可以包含多条语句,但必
5、须用花括号括起来10.关于 C+语言与 C 语言关系描述中错误的是(分数:2.00)A.C+语言是 C 语言的超集B.C+语言对 C 语言进行了扩充C.C+语言包含 C 语言的全部语法特征D.C+语言与 C 语言都是面向对象的程序设计语言11.线性表 L=(a1,32,a3,ai,an),下列说法正确的是(分数:2.00)A.每个元素都有一个直接前件和直接后件B.线性表中至少要有一个元素C.表中诸元素的排列顺序必须是由小到大或由大到小D.除第一个元素和最后一个元素外,其余每个元素都有一个且只有一个直接前件和直接后件12.下列语句的输出结果cout strlen(“/t/“/065/xff/n“
6、);(分数:2.00)A.5B.14C.8D.输出项不合法,无正常输出有如下程序#includeiostreamhint func(int a,int B) return(a+B) ;void main( )int x=2,y=5,z=8,r;r=func(func(x,y),z);cout r;该程序的输出的结果是(分数:4.00)A.12B.13C.14D.15A.B.C.D.13.在 C+语言中,打开一个文件就是将这个文件与一个什么建立关联?(分数:2.00)A.流B.类C.结构D.对象14.下面程序的结果是#includeiostreamhclass Aint a;public:A(
7、):a(1) void showa( ) cout a;class Bint a;public:B( ):a(2) void showa( ) cout a;class C:public A,public Bint a;public:C( ):a(3) void showa( ) cout a;void main( )C c;cshowa( );(分数:2.00)A.1B.2C.3D.程序有错误15.算法分析的目的是(分数:2.00)A.找出数据结构的合理性B.找出算法中输入和输出之间的关系C.分析算法的易懂性和可靠性D.分析算法的效率以求改进16.假设线性表的长度为 n,则在最坏情况下,冒泡
8、排序需要的比较次数为(分数:2.00)A.log2nB.n2C.O(n1.5)D.n(n-1)/217.下列数据模型中,具有坚实理论基础的是(分数:2.00)A.层次模型B.网状模型C.关系模型D.以上 3 个都是18.执行语句 for(i=1;i+ 4;);,后变量 i 的值是(分数:2.00)A.3B.4C.5D.不定19.&(c =z=(分数:2.00)A.B (c =A)B.a =c =zC.(a =c) | |(z =c)D.(c =a)&(c =z)20.若有如下语句#includeiostreamhvoid main( )int x=3;do x=x-2;cout x;while
9、(!(-X);则上面程序段(分数:2.00)A.输出的是 1B.输出的是 1 和-2C.输出的是 3 和 0D.是死循环21.在 C+语言中,不合法的实型数据的是(分数:2.00)A.0123B.123e3C.21e35D.123022.下面的语句中错误的是(分数:2.00)A.int a=5;int xa;B.const int a=5;int xa;C.int n=5;int *p=new inta;D.const int n=5;int *p=new inta;23.下列程序的运行结果是#includeiostreamhvoid fun(int *a,iht *B) int *k;k=a
10、;a=b;b=k;void main( )inta=3,b=6,*x=&a,*y=&b;fun(x,y);cout a “ “ b;(分数:2.00)A.6 3B.3 6C.编译出错D.0024.软件工程的出现是由于(分数:2.00)A.程序设计方法学的影响B.软件产业化的需要C.软件危机的出现D.计算机的发展25.下列字符串中可以用作 C+语言标识符的是(分数:2.00)A.1234B.foo barC.virtualD.34var函数模板:templateT add(T x,T y) return x+y;下列对 add 函数的调用不正确的是(分数:4.00)A.add(1,2)B.add
11、(1,2)C.add(10,2)D.add(10,20)A.B.C.D.26.关系表中的每一横行称为一个(分数:2.00)A.元组B.字段C.属性D.码27.对于语句 cout setfill(*) setw(10) 1 setfill(*) setw(2) 2;的输出结果是(分数:2.00)A.* * * * * * * * * 1 * 2B.* * * * * * * * 12C.* * * * * * * 1 * 2D.12 * * * * * * * *28.以下程序中调用 cin 函数给变量 a 输入数值的方法是错误的,其错误原因是#includeiostreamhvoid main
12、( )int *p,*q,a,b;p=&a;cout “input a:“;cin p;(分数:2.00)A.* p 表示的是指针变量 p 的地址B.p 表示的是变量 a 的地址,而不是变量 a 的值C.* p 表示的是指针变量 p 的值D.* p 只能用来说明 p 是一个指针变量29.this 指针是 C+语言实现什么的一种机制?(分数:2.00)A.抽象B.封装C.继承D.重载30.下列程序的输出结果是#includeclass Myclass public:Myclass(int i=0,intj=0)x=i;y=j;void show( ) cout “x=“ x “ “ “y=“ y
13、 end1;void show( )const cout “x=“ “ “ “y= y end1;privated:int x; int y;void main( )Myclass my1(3,4);const my2(7,8);my1show( );my2show( );(分数:2.00)A.x=4,y=3;x=7,y=8B.x=3,y=4;x=7,y=8C.x=7,y=8;x=4,y=3D.x=8,y=7;x=7,y=831.分布式数据库系统不具有的特点是(分数:2.00)A.数据分布性和逻辑整体性B.位置透明性和复制透明性C.分布性D.数据冗余32.在数据流图(DFD) 中,带有名字的箭
14、头表示(分数:2.00)A.模块之间的调用关系B.程序的组成成分C.控制程序的执行顺序D.数据的流向二、填空题(总题数:13,分数:30.00)33.在算法正确的前提下,评价一个算法的两个标准是 【1】 。(分数:2.00)填空项 1:_34.将代数式 (分数:2.00)填空项 1:_35.软件危机出现于 60 年代末,为了解决软件危机,人们提出了 【3】 的原理来设计软件,这就是软件工程诞生的基础。(分数:2.00)填空项 1:_36. 【4】 是数据库设计的核心。(分数:2.00)填空项 1:_37.在关系模型中,把数据看成一个二维表,每一个二维表称为一个 【5】 。(分数:2.00)填空
15、项 1:_38.一个 C+语言程序的开发步骤通常包括编辑、 【6】 、链接、运行和调试。(分数:2.00)填空项 1:_39.若已知 a=10,b=20,则表达式 l a b 的值为 【7】 。(分数:2.00)填空项 1:_40.下面程序的运行结果是 【8】 和 【9】 。#includeiostreamh#define N 10#define s(x)x * x#define f(x)(x * x)void main( )int i1,i2;i1=1000/s(N);i2=1000/f(N);cout i1 “ “ i2;(分数:4.00)填空项 1:_41.友元类的所有成员函数都是另一个
16、类的 【10】 。(分数:2.00)填空项 1:_42. 【11】 是实现 C+语言编译时多态性的机制, 【12】 是实现 C+语言运行时多态性的机制。(分数:4.00)填空项 1:_43.表达式 xoperator+1 还可写成 【13】 。(分数:2.00)填空项 1:_44.以下程序的输出结果是 【14】 。#includeiostreamhvoid main1int a=0;a+ =(a=8);cout a;(分数:2.00)填空项 1:_45.若要在 C 盘根目录下作为二进制文件打开文件 testdat,则应该用的语句是 【15】 。(分数:2.00)填空项 1:_二级 C+笔试-2
17、60 答案解析(总分:106.00,做题时间:90 分钟)一、选择题(总题数:35,分数:76.00)1.下列定义中 p 指向的地址可更改,但* p 不能够更改的是(分数:2.00)A.const int *p; B.int * const p;C.const int *const p;D.int *p;解析:解析:const int *p;是只能改变指针地址,int * const P;是只能改变 *P 的内容,const int * constp;是指针的地址和*p 的内容都不能改变,int *P;是两者都能改变。2.软件开发离不开系统环境资源的支持,其中必要的测试数据属于(分数:2.00
18、)A.硬件资源B.通信资源C.支持软件D.辅助资源 解析:解析:软件测试过程中,辅助资源包括测试用例(测试数据)、测试计划、出错统计和最终分析报告等。3.以下叙述正确的是(分数:2.00)A.函数可以嵌套定义但不能嵌套调用B.函数既可以嵌套调用也可以嵌套定义C.函数既不可以嵌套定义也不可以嵌套调用D.函数可以嵌套调用但不可以嵌套定义 解析:解析:在 C+语言中,所有的函数都是平行的,即在定义函数时是互相独立的,一个函数并不从属于男一个函数,即函数不能嵌套定义,但可以互相调用。但是不能调用 main( )函数。4.有以下程序#includevoid fun(int a,int b,int C)
19、a=456,b=567,c=678;void main( )int x=10,y=20,z=30;fun(x,y,z);cout x , y , z end1;输出结果是(分数:2.00)A.30,20,10B.10,20,30 C.456,567,678D.678,567,456解析:解析:本题考查函数中变量的作用范围,在主函数中给变量 x,y,z 赋值,然后将其作为实参传递给了函数 fun( ),虽然在函数 fun( )中改变了这 3 个变量的值,但只是同名的局部变量,不影响函数中变量的值,所以在调用函数 fun( )结束后,主函数 3 个变量的值未改变。假定 int 类型变量占用两个字节
20、,其有定义 int x l0= 0,2,4 ;,则数组 x 在内存中所占字节数是(分数:4.00)A.3B.6C.10D.20解析:解析:x 数组共有 10 个元素,在花括弧内只提供 3 个初值,这表示只给前面的 3 个成员赋值,后7 个元素的值为 0,所以,一共有 20 个字节。A.B.C.D. 解析:解析:x 数组共有 10 个元素,在花括弧内只提供 3 个初值,这表示只给前面的 3 个成员赋值,后7 个元素的值为 0,所以,一共有 20 个字节。5.如果表达式 x * y + z 中,“ * ”是作为友元函数重载的,“+”是作为友元函数重载的,则该表达式还可为(分数:2.00)A.ope
21、rator+(operator*(x,y),z) B.operator+(operator*(x,y),z)C.operator*(operator+(x,y),z)D.operator+(operator*(x,y)解析:解析:C+中用成员函数重载 x*y 为:xoperator * (y),用友元函数重载 x*y 为:operator *(x,y),用成员函数重载 x/y 为:xoperator+(y),用友元函数重载 x + y 为:operator+(x,y)。6.下列描述中,抽象类的特性是(分数:2.00)A.可以说明虚函数B.可以定义友元函数C.可以进行构造函数重载D.不能说明其对
22、象 解析:解析:带有纯虚函数的类称为抽象类,抽象类中的纯虚函数没有具体的定义,所以不能说明抽象类的对象。7.在单链表中,增加头结点的目的是(分数:2.00)A.方便运算的实现 B.使单链表至少有一个结点C.标识表结点中首结点的位置D.说明单链表是线性表的链式存储实现解析:解析:头结点不仅标识了表中首结点的位置,而且根据单链表(包含头结点)的结构,只要掌握了表头,就能够访问整个链表,因此增加头结点目的是为了便于运算的实现。8.关于二义性的描述错误的是(分数:2.00)A.一个子类的两个父类中都有某个同名成员,在子类中对该成员访问可能出现二义性B.解决二义性可以用对成员名的限定法C.父类和子类中同
23、时出现同名函数,也可能存在二义性 D.一个子类是从两个父类派生出来的,而这两个父类又有一个共同的父类,对该父类成员进行访问时,可能出现二义性解析:解析:基类和其继承类同时出现同名函数,则在继承类中实现对象中调用该函数是使用继承类中的定义,这种情况下是不会产生二义性的。9.下面有关 for 循环的正确描述是(分数:2.00)A.for 循环只能用于循环次数已经确定的情况B.for 循环是先执行循环体语句,后判断表达式C.在 for 循环中,不能用 break 语句跳出循环体D.for 循环的循环体语句中,可以包含多条语句,但必须用花括号括起来 解析:解析:选项 A) for 循环可以用于循环次数
- 1.请仔细阅读文档,确保文档完整性,对于不预览、不比对内容而直接下载带来的问题本站不予受理。
- 2.下载的文档,不会出现我们的网址水印。
- 3、该文档所得收入(下载+内容+预览)归上传者、原创作者;如果您是本文档原作者,请点此认领!既往收益都归您。
下载文档到电脑,查找使用更方便
5000 积分 0人已下载
下载 | 加入VIP,交流精品资源 |
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 计算机 职业资格 二级 笔试 260 答案 解析 DOC
