【计算机类职业资格】二级C++笔试309及答案解析.doc
《【计算机类职业资格】二级C++笔试309及答案解析.doc》由会员分享,可在线阅读,更多相关《【计算机类职业资格】二级C++笔试309及答案解析.doc(12页珍藏版)》请在麦多课文档分享上搜索。
1、二级 C+笔试 309及答案解析(总分:100.00,做题时间:90 分钟)一、B选择题/B(总题数:35,分数:70.00)1.设二叉树中有 3个叶子结点,有 8个度为 1的结点,则该二叉树中总的结点数为( )。(分数:2.00)A.12B.13C.14D.152.下列标识符中合法的是( )。(分数:2.00)A.abde+B.#KSJFC.67KDJD.DK33.若有以下函数调用语句:fun(m+n,x+y,f(m+n,z,(x,y);在此函数调用语句中实参的个数是( )。(分数:2.00)A.6B.5C.4D.34.对于 int a35,说法正确的是( )。(分数:2.00)A.这是一个
2、二维数组,它的数据元素的数据类型为整型,它按列依次存储在连续内存单元中B.它的最大下标值的元素为 a35C.它的最大下标值的元素为 a34D.它的最大下标值的元素为 a245.对于长度为 n的线性表,在最坏情况下,下列各排序法的比较次数中正确的是( )。(分数:2.00)A.冒泡排序为 n/2B.冒泡排序为 nC.快速排序为 nD.快速排序为 n(n-1)/26.下列不属于结构化分析常用工具的是( )。(分数:2.00)A.用例图B.数据字典C.判定树D.PAD图7.下面程序的输出结果是( )。 #include iostream using namespace std; void main(
3、 ) int i,j,m=0,n=0; for(i=0;i2;i+) for(j=0;j2;j+) if(j =i) m=1;n+; coutmendl; coutn;(分数:2.00)A.1 1B.1 4C.1 6D.0 28.下面关于形参与实参的说法,正确的是( )。(分数:2.00)A.形参与实参的个数、类型、顺序都应一一对应B.形参与实参的个数可以不必相同,少一个多一个程序一样执行C.形参与实参的类型可以不同,不影响运算结果D.形参与实参的类型个数相同,而顺序不同,计算机可以自动进行匹配,所以形参的顺序无所谓,只要各种形参类型的数量与实参相同即可9.下面程序的输出结果是( )。 #in
4、clude iostream using namespace std; void main( ) inta33 =1,2,3,4,5; int s =0; for(int i=1;i3;i+) for(int j=0;j=i;j+) s+=aij; coutsendl;(分数:2.00)A.12B.4C.15D.1310.下面程序的输出结果是( )。 #include iostream using namespace std; class point public: point(int px=10,int py=10) x=px;y=py; getpx( ) return x; getpy(
5、) return y; private: int x,y; ; void main(voiD) point p,q(15,15); cout“p 点的坐标是:“p. getpx( )“ ,“; coutp. getpy( )endl; cout“q 点的坐标是:“q. getpx( )“ ,“; coutq. getpy( ); (分数:2.00)A.p点的坐标是:10,10 q 点的坐标是:15,15B.p点的坐标是:0,0 q 点的坐标是:15,15C.p点的坐标是:0,0 q 点的坐标是:0,0D.p点的坐标是:10,10 q 点的坐标是:10,1011.软件开发的结构化生命周期方法将软
6、件生命周期划分成( )。(分数:2.00)A.定义、开发、运行维护B.设计阶段、编程阶段、测试阶段C.总体设计、详细设计、编程调试D.需求分析、功能定义、系统设计12.软件开发离不开系统环境资源的支持,其中必要的测试数据属于( )。(分数:2.00)A.硬件资源B.通信资源C.支持软件D.辅助资源13.关于保护继承的有关对象的说法,正确的是( )。(分数:2.00)A.基类成员对于子类的对象都是不可见的,子类成员的公有成员对子类的对象是可见的B.子类成员对子类的对象是可见的,基类成员对子类的对象也都是可见的C.基类成员中的公有成员对子类的对象是可见的D.基类成员对子类是不可见的14.将字符c输
7、出不正确的是( )。(分数:2.00)A.char ch;ch=c;cou put(c;B.couput(c);C.coutc;D.coatc;15.类的析构函数的作用是( )。(分数:2.00)A.一般成员函数B.类的初始化C.对象的初始化D.删除对象16.下列关于变量的说法中,正确的是( )。(分数:2.00)A.在复合语句中定义的变量也是局部变量,它的生存期在本复合语句执行完毕即告结束B.在一定范围内,整型变量和字符型变量可以相互赋值,如:int a;char s=a;a=s 是可以的C.全局变量的有效范围是从该变量的定义位置开始到本工程结束D.char a;a=878*101;cout
8、a;,本复合语句输出的值为:8867817.软件设计中,有利于提高模块独立性的一个准则是( )。(分数:2.00)A.低内聚低耦合B.低内聚高耦合C.高内聚低耦合D.高内聚高耦合18.下面程序的输出结果是( )。 #include iostream using namespace std; int fun (int, int); /fun ( ) 函数的说明 void main( ) int a =48,b =36,c; c = fun(a,B) ; coutc; int fun(int u,int v) int w; while (v) w=u%v;u =v;v =w; return u;
9、(分数:2.00)A.24B.12C.48D.3619.下面程序的输出结果是( )。 #include iostream using namespace std; void main( ) int i=8,*p=0; p = coatp; (分数:2.00)A.0B.变量 i的地址C.*p=0; 是错误的,因为不可给指针型变量赋予常数值D.820.如果重载不能重载的运算符会出现语法错误,下列不可以被重载的运算符是( )。(分数:2.00)A.B.*C.=D.sizeof21.对下列语句正确的描述是( )。 const int *x; int *const x;(分数:2.00)A.语句 1的含
10、义是指针变量 x不能更改B.语句 2的含义是指针变量 x所指向的值不能更改C.语句 2的含义是指针变量 x不能更改D.语句 1和语句 2含义是相同的22.下列不属于 3种基本控制结构是( )。(分数:2.00)A.顺序B.选择C.循环D.调用23.数据处理的最小单位是( )。(分数:2.00)A.数据B.数据元素C.数据项D.数据结构24.下列写法中等价的是( )。(分数:2.00)A.若 x=1,while(x!=与 while(B.若 x=0,while(x!=与 while(C.若 x=1,while(x!=0)与 while(!D.若 x=0,while(x=0)与 while(25.
11、对于函数的传址调用,下面说法中不正确的是( )。(分数:2.00)A.是把实参的地址传递给形参,所以形参、实参共用相同的存储空间B.形参值的改变会影响实参值C.传址调用可传给主调函数多个值D.既然形参与实参共用相同空间,则它们的生存期是相同的26.n个顶点的连通图中边的条数至少为( )。(分数:2.00)A.0B.1C.n-1D.n27.关于模板函数与函数模板的说法,正确的是( )。(分数:2.00)A.其实质是一样的,只是说法不同B.两者的形参类型是一样的C.模板函数是函数模板的实例化D.函数模板是模板函数的实例化28.关于下面程序的说法,正确的是( )。 #include iostream
12、 using namespace std; class x int a; public: x()a=3; int geta( ) coutaendl; return a; ; class y: x int b; public: x: geta; /A void result ( ) b=geta ( )+8; contbendl; ; void main ( ) y yy; /B yy. result( ); yy. geta( ); /C (分数:2.00)A.A行错误,应写成“x:geat()”B.B行错误,应写成“y yy();”C.C行错误,不能对私变量引用D.没有错误,其输出结果为:
13、 3 11 329.若有 char ch10,则下列字符串数组的赋值中不正确的是( )。(分数:2.00)A.ch=“welcome“;B.ch0=w;C.strcpy(ch,“welcome“);D.char ch1=“welcome“;strcpy(ch,ch1);30.关于函数重载的说法,正确的是( )。(分数:2.00)A.函数的返回值类型在区别重载函数时起着举足轻重的作用B.参数的个数在区别重载函数时也起着重要的作用C.功能不同的两个函数也可以重载,这使得程序更简洁D.重载函数是靠参数的个数和类型来区分的,参数的名称和返回值类型是不起作用的31.关于 getline函数,说法不正确的
14、是( )。(分数:2.00)A.该函数接收的字符串长度是受限的,可以人为设置所接收字符串的长度,它所接收的字符串长度是这一长度值减 1B.该函数遇到换行符或其他终止符后结束操作C.该函数接收从键盘输入的字符串D.该函数是接收字符的函数32.线性表的顺序存储结构和线性表的链式存储结构分别是( )。(分数:2.00)A.顺序存取的存储结构、顺序存取的存储结构B.随机存取的存储结构、顺序存取的存储结构C.随机存取的存储结构、随机存取的存储结构D.任意存取的存储结构、任意存取的存储结构33.假设 person是一个类,p1 是该类的一个对象,p2 是一个指向 p1的指针,getname()是其中的一个
15、函数,则下面对象的使用不正确的是( )。(分数:2.00)A.persogetname();B.p1.getname();C.p1.person:getname();D.p2-getname();34.下列程序段没有错误的是( )。(分数:2.00)A.int*p;cin*p;B.int*s,k;*s=100C.int *s ,k; char *p ,c; s=b=5;-a,执行后 b的值为 5二、B填空题/B(总题数:15,分数:30.00)36.在模块化设计过程中,U 【1】 /U用来衡量模块内部各个元素彼此结合的紧密程度。(分数:2.00)填空项 1:_37.数据流图中父图和子图的平衡是
16、指U 【2】 /U。(分数:2.00)填空项 1:_38.实体关系图(E-R 图)是用来描述U 【3】 /U。(分数:2.00)填空项 1:_39.二叉树由三个基本单元组成,即左子树,右子树和U 【4】 /U。(分数:2.00)填空项 1:_40.哈夫曼树是U 【5】 /U。(分数:2.00)填空项 1:_41.常量和变量的区别是:常量在程序运行中值不变,因此它的值在定义时便进行初始化;而尘量的值是可以改变的,U 【6】 /U类型的变量存储的是变量的地址。(分数:2.00)填空项 1:_42.以/*开始,*/结束,在/*和*/之间的部分即为U 【7】 /U。(分数:2.00)填空项 1:_43
17、.下面程序的输出结果是U 【8】 /U。 #include iostream using namespace std; int d=1; fun(int p) static int d = 5; d+ =p; coutd; return (d) ; void main ( ) int a =3; coutfun ( a + fun (d) )endl; (分数:2.00)填空项 1:_44.下面函数返回数组中最大元素的下标,数组中元素个数为 t,将程序补充完整。 int findmax(int s,int t) int k,p; for(p=0,k=p;pt;p+) ifU 【9】 /U k=
18、p; return k; (分数:2.00)填空项 1:_45.void类型的指针是指指针指向的变量的数据类型是不固定的。对该指针进行操作时,应进行U 【10】 /U。(分数:2.00)填空项 1:_46.在定义类的对象时,C+程序将自动调用该对象的U 【11】 /U函数初始化对象自身。(分数:2.00)填空项 1:_47.由于静态成员函数不属于某个具体的对象,但它属于某个U 【12】 /U,所以它没有 this指针。(分数:2.00)填空项 1:_48.在派生类中使用基类的成员,可以显式地使用U 【13】 /U来使用基类成员。(分数:2.00)填空项 1:_49.输出带引号的字符串“hell
19、o world!”的语句是U 【14】 /U。(分数:2.00)填空项 1:_50.将函数模板中的参数实例化后,函数模板变为U 【15】 /U。(分数:2.00)填空项 1:_二级 C+笔试 309答案解析(总分:100.00,做题时间:90 分钟)一、B选择题/B(总题数:35,分数:70.00)1.设二叉树中有 3个叶子结点,有 8个度为 1的结点,则该二叉树中总的结点数为( )。(分数:2.00)A.12B.13 C.14D.15解析:解析 一棵二叉树中有 3个叶子结点,则度为 2的结点有 3-1=2,总结点数为叶子结点数、度为1的结点数和度为 2的结点数之和。即 3+8+2=13。2.
20、下列标识符中合法的是( )。(分数:2.00)A.abde+B.#KSJFC.67KDJD.DK3 解析:解析 选项 D为 C+合法的标识符。3.若有以下函数调用语句:fun(m+n,x+y,f(m+n,z,(x,y);在此函数调用语句中实参的个数是( )。(分数:2.00)A.6B.5C.4D.3 解析:解析 参数之间是用逗号分隔的,不要因为参数是表达式而被迷惑。函数的第一个参数是表达式m+n,第三个参数是表达式 f(m+n,z,(x,y)。4.对于 int a35,说法正确的是( )。(分数:2.00)A.这是一个二维数组,它的数据元素的数据类型为整型,它按列依次存储在连续内存单元中B.它
21、的最大下标值的元素为 a35C.它的最大下标值的元素为 a34D.它的最大下标值的元素为 a24 解析:解析 二维数组的元素按行排列;数组元素下标从 0开始。5.对于长度为 n的线性表,在最坏情况下,下列各排序法的比较次数中正确的是( )。(分数:2.00)A.冒泡排序为 n/2B.冒泡排序为 nC.快速排序为 nD.快速排序为 n(n-1)/2 解析:解析 对于长度为 n的线性表,在最坏情况下,冒泡排序和快速排序需进行 n(n-1)/2次关键字比较。6.下列不属于结构化分析常用工具的是( )。(分数:2.00)A.用例图 B.数据字典C.判定树D.PAD图解析:解析 用例图不属于结构化分析的
22、常用工具,是面向对象分析的工具。7.下面程序的输出结果是( )。 #include iostream using namespace std; void main( ) int i,j,m=0,n=0; for(i=0;i2;i+) for(j=0;j2;j+) if(j =i) m=1;n+; coutmendl; coutn;(分数:2.00)A.1 1 B.1 4C.1 6D.0 2解析:解析 注意整个二重循环作用的语句为:if(j=i)m=1;,而 n+语句并不为二重循环控制。其实不论循环多少次,m、n 的值总为 1。8.下面关于形参与实参的说法,正确的是( )。(分数:2.00)A.
- 1.请仔细阅读文档,确保文档完整性,对于不预览、不比对内容而直接下载带来的问题本站不予受理。
- 2.下载的文档,不会出现我们的网址水印。
- 3、该文档所得收入(下载+内容+预览)归上传者、原创作者;如果您是本文档原作者,请点此认领!既往收益都归您。
下载文档到电脑,查找使用更方便
5000 积分 0人已下载
下载 | 加入VIP,交流精品资源 |
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 计算机 职业资格 二级 笔试 309 答案 解析 DOC
