【计算机类职业资格】二级C++笔试-177及答案解析.doc
《【计算机类职业资格】二级C++笔试-177及答案解析.doc》由会员分享,可在线阅读,更多相关《【计算机类职业资格】二级C++笔试-177及答案解析.doc(22页珍藏版)》请在麦多课文档分享上搜索。
1、二级 C+笔试-177 及答案解析(总分:96.00,做题时间:90 分钟)一、选择题(总题数:35,分数:70.00)1.有以下程序:#includestring.h#includeiostream.hvoid main( ) char * p“abcde/0fghjik/0“;cout strlen(p) ;程序运行后的输出结果是(分数:2.00)A.12B.15C.6D.52.若有说明语句:char a “It is mine“;char * p“It is mine“;则以下不正确的叙述是(分数:2.00)A.a1 表示的是字符 t 的地址B.p 指向另外的字符串时,字符串的长度不受限
2、制C.p 变量中存放的地址值可以改变D.a 中只能存放 10 个字符3.下列程序的运行结果是#inClUdeiostream.hclass Locationprivate:int X,Y;pubhc:void init(int0,int0) ;void valueX(int val) Xval;int valueX( ) retum X;void valueY(int val) Yval;int valueY( ) retum Y;void Location: :init(int initX,int initY) XinitX;YinitY;Void main( ) Location A,B;
3、A. init( ) ;A. valueX(5) ;cout A. valueX( ) endl A. valueY( ) endl;B. init(6,2) ;B. valueY(4) ;cout B. valueX( ) endl B. valueY( ) endl;(分数:2.00)A.5B.0C.5D.00 0 0 06 6 6 64 4 2 24.下列不属于结构化分析的常用工具的是(分数:2.00)A.数据流图B.数据字典C.判定树D.PAD 图5.面向对象程序设计思想的主要特征中不包括(分数:2.00)A.继承性B.功能分解,逐步求精C.封装性和信息隐藏D.多态性6.能正确表示逻辑
4、关系:“a10 或 a0”的 C语言表达式是(分数:2.00)A.a10 or a0B.a0 | a10C.a10 for(i1;iNUM;i) cout i;该程序中的 fof 循环执行的次数是(分数:2.00)A.5B.6C.7D.811.执行下列程序段,结果是#includeiostream.hvoid main( ) int x40;char yC;int n; n(xcout n;(分数:2.00)A.0B.1C.2D.312.数据库的故障恢复一般是由(分数:2.00)A.数据流图完成的B.数据字典完成的C.DBA 完成的D.PAD 图完成的13.如果在表达式x/y 中,是作为友元函
5、数重载的,/是作为成员函数重载的,则该表达式还可为(分数:2.00)A.(operator(x) ) .operator/(y)B.(operator(0) ) .operator/(y)C.operator/(operator(x,0) ) ,y)D.operator/(operator(0) ) ,y)14.下面程序的输出结果是#includeiostream.hclass Apublic:A( ) cout “construtA“ endl;VirtualA( ) cout “destructA“ endl;class B: public A;class C:public A;class
6、 D:public B,public C;void main( ) D d;(分数:2.00)A.constructAB.constructAC.constructAD.constructAdestructA constructA constructA constructAdestructA constructA constrnctAdestructA destructA constructAdestructA destructA destructAdestrctA destructAdestructA15.要想使 23.78965421 的输出为 23.7887,应用的语句是(分数:2.00
7、)A.cout 23.78965421;B.cout fixed 23.78965421;C.cout 23.789654210.001;D.cout fixed 23.789654210.001;16.若执行下面的程序时,从键盘上输入 5 和 2,则输出结果是#includeiostream.hvoid main( ) int a,b,k;cin a b;ka;if(ab) ka%b;elsekb%a;cout k endl;(分数:2.00)A.5B.3C.2D.017.已知数据表 A 中每个元素距其最终位置不远,为节省时间,应采用的算法是(分数:2.00)A.堆排序B.直接插入排序C.快
8、速排序D.直接选择排序18.下列程序是用来判断数组中特定元素的位置所在,则输出结果为#includeconio.h#includeiostream.hint fun(int * s,int t,int * k) int i;*k0;for(i0;it;i) if(s * k si ) *ki;retum s * k ;void main( ) int a10 876,675,896,101,301,401,980,431,451,777,k;fun(a,10,cout k , ak ;(分数:2.00)A.7,431B.6C.980D.6,98019.下列程序的输出结果是#includeios
9、tream.hint b2;int func(int *(分数:2.00)A.b * a; return(B.;void main( ) int a,b,c;sub(10,5,sub(7,a,sub(a,b,cout a “,“22.C语言是以哪种语言为基础逐渐发展演变而成的一种程序设计语言?(分数:2.00)A.ASPB.CC.VBD.Java23.在 C语言中,封装是借助于什么达到的?(分数:2.00)A.结构B.类C.数组D.函数24.有以下程序:#includeiostream.hFloat fun(int x, int y) return(xy) ;void main( ) int
10、a2,b5,c8;cout fun(int) fun(ac, b) ,ac) ;程序运行后的输出结果是(分数:2.00)A.编译出错B.9C.21D.9.025.设变量 a 是 int 型,f 是 double 型,i 是 float 型,则表达式 10ai * f 值的数据类型是(分数:2.00)A.intB.floatC.doubleD.不确定26.对建立良好的程序设计风格,下面描述正确的是(分数:2.00)A.程序应简单、清晰、可读性好B.符号名的命名只要符合语法C.充分考虑程序的执行效率D.程序的注释可有可无27.有以下语句,则对 a 数组元素的引用不正确的是(0i9) int a10
11、 0,1,2,3,4,5,6,7,8,9, * pa;(分数:2.00)A.apaB.* (for(i0;i2;i) x;for(j0;j3;j) if(j%2) continue;x;x;cout “X“ x;(分数:2.00)A.x4B.x8C.x6D.x1234.关于 this 指针的说明不正确的是(分数:2.00)A.不能在程序中修改 this 指针B.this 指针可以给其他指针赋值,但不能修改 this 指针C.静态成员函数中没有 this 指针D.this 指针可以被赋值35.有如下程序:#includeiostream.hlong fib(int n) if(n2) retur
12、n(fib(n1) fib(n2) ) ;else return(2) ;void main( ) cout nb(3) ;该程序的输出结果是(分数:2.00)A.2B.4C.6D.8二、填空题(总题数:13,分数:26.00)36.冒泡排序算法在最好的情况下的元素交换次数为 。(分数:2.00)填空项 1:_37.在最坏情况下,堆排序需要比较的次数为 。(分数:2.00)填空项 1:_38.若串 s“MathTypes“,则其子串的数目是 。(分数:2.00)填空项 1:_39.软件开发环境是全面支持软件开发全过程的 集合。(分数:2.00)填空项 1:_40.关系数据库的关系演算语言是以
13、为基础的 DML 语言。(分数:2.00)填空项 1:_41.C语言中关键字运算符有 new、delete 和 。(分数:2.00)填空项 1:_42.将以下程序写成三日运算表达式是 。if(ab) maxa;else maxb;(分数:2.00)填空项 1:_43.以下程序的输出结果是 。#includeiostream.hclass objectprivate:int val;public:object( ) ;object(int i) ;object( ) ;object: :object( ) val0;cout “Default constructor for object“ en
14、dl;object: :object(int i) vali;cout “Constructor for object“ val endl;object: :object( ) cout “Destructor for object“ val endl;class container private:object one;object two;int data;public:container( ) ;container(int i,int j,int k) ;container( ) ;container: :container( ) data0;cout “Default construc
15、tor for container“ endl;container: :container(int i,int j,int k) :two(i) ,one(j) datak;cout “Constructor for container“ endl;container: :container( ) cout “Destructor for container“ endl;void main( ) container anObj(5,6,10) ;(分数:2.00)填空项 1:_44.下面程序的功能是将字符数组 a 中下标值为偶数的元素从小到大排列,其他元素不变,请填空。#includeiost
16、ream.h#includestring.hvoid main( ) char a “clanguage“, t;int I ,j, k;kstrlen(a) ;for(i0;ik2;i2) for(ji2;jk; 9 ) if( 10 ) tai ;ai aj ;aj t; cout a;cout endl;(分数:2.00)填空项 1:_45.静态成员函数可以直接访问类的 11 成员,不能直接访问类的 12 成员。(分数:2.00)填空项 1:_46.请定义一个函数名为 A,返回值为 int,没有参数的纯虚函数的定义是 。(分数:2.00)填空项 1:_47.表达式 x. operator
17、(y. operator(0) ) 还可以写成 。(分数:2.00)填空项 1:_48.假设 fin 是一个文件流对象,则关闭文件的语句是 。(分数:2.00)填空项 1:_二级 C+笔试-177 答案解析(总分:96.00,做题时间:90 分钟)一、选择题(总题数:35,分数:70.00)1.有以下程序:#includestring.h#includeiostream.hvoid main( ) char * p“abcde/0fghjik/0“;cout strlen(p) ;程序运行后的输出结果是(分数:2.00)A.12B.15C.6D.5 解析:解析 C语言规定了一个字符串结束标志,
18、以字符/0代表,在遇到/0时,表示字符串结束,由它前面的字符组成字符串。2.若有说明语句:char a “It is mine“;char * p“It is mine“;则以下不正确的叙述是(分数:2.00)A.a1 表示的是字符 t 的地址B.p 指向另外的字符串时,字符串的长度不受限制C.p 变量中存放的地址值可以改变D.a 中只能存放 10 个字符 解析:解析 本题考查字符串数组和指针的引用方式。在 C语言中,系统在每个字符串或数组的最后自动加入一个字符/0,作为字符的结束标志,在本题中,char a “It is mine”;所表示的 a字符串实际含有 11 个字符。3.下列程序的运
19、行结果是#inClUdeiostream.hclass Locationprivate:int X,Y;pubhc:void init(int0,int0) ;void valueX(int val) Xval;int valueX( ) retum X;void valueY(int val) Yval;int valueY( ) retum Y;void Location: :init(int initX,int initY) XinitX;YinitY;Void main( ) Location A,B;A. init( ) ;A. valueX(5) ;cout A. valueX(
20、) endl A. valueY( ) endl;B. init(6,2) ;B. valueY(4) ;cout B. valueX( ) endl B. valueY( ) endl;(分数:2.00)A.5 B.0C.5D.00 0 0 06 6 6 64 4 2 2解析:解析 本题中有成员函数和它的重载函数,要注意它们的不同,在本题中先调用了 init 函数,初始化了 X、Y,都为 0,valueX(5) ;又将 X 变为 5,所以输出 5 和 0,然后初始化 init(6,2) ,接着又valueY(4) ;将 X、Y 设为 6 和 4,所以输出 6 和 4。4.下列不属于结构化分析
21、的常用工具的是(分数:2.00)A.数据流图B.数据字典C.判定树D.PAD 图 解析:解析 结构化分析的常用工具有数据流图、数据字典、判定树和判定表。而 PAD 图是常见的过程设计工具中的图形设计工具。5.面向对象程序设计思想的主要特征中不包括(分数:2.00)A.继承性B.功能分解,逐步求精 C.封装性和信息隐藏D.多态性解析:解析 面向对象程序设计的主要特征是继承性、封装性和信息隐藏、多态性。6.能正确表示逻辑关系:“a10 或 a0”的 C语言表达式是(分数:2.00)A.a10 or a0B.a0 | a10C.a10 for(i1;iNUM;i) cout i;该程序中的 fof
- 1.请仔细阅读文档,确保文档完整性,对于不预览、不比对内容而直接下载带来的问题本站不予受理。
- 2.下载的文档,不会出现我们的网址水印。
- 3、该文档所得收入(下载+内容+预览)归上传者、原创作者;如果您是本文档原作者,请点此认领!既往收益都归您。
下载文档到电脑,查找使用更方便
5000 积分 0人已下载
下载 | 加入VIP,交流精品资源 |
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 计算机 职业资格 二级 笔试 177 答案 解析 DOC
