欢迎来到麦多课文档分享! | 帮助中心 海量文档,免费浏览,给你所需,享你所想!
麦多课文档分享
全部分类
  • 标准规范>
  • 教学课件>
  • 考试资料>
  • 办公文档>
  • 学术论文>
  • 行业资料>
  • 易语言源码>
  • ImageVerifierCode 换一换
    首页 麦多课文档分享 > 资源分类 > DOC文档下载
    分享到微信 分享到微博 分享到QQ空间

    【计算机类职业资格】二级C++笔试309及答案解析.doc

    • 资源ID:1324725       资源大小:71KB        全文页数:12页
    • 资源格式: DOC        下载积分:5000积分
    快捷下载 游客一键下载
    账号登录下载
    微信登录下载
    二维码
    微信扫一扫登录
    下载资源需要5000积分(如需开发票,请勿充值!)
    邮箱/手机:
    温馨提示:
    如需开发票,请勿充值!快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如需开发票,请勿充值!如填写123,账号就是123,密码也是123。
    支付方式: 支付宝扫码支付    微信扫码支付   
    验证码:   换一换

    加入VIP,交流精品资源
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    【计算机类职业资格】二级C++笔试309及答案解析.doc

    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.

    23、形参与实参的个数、类型、顺序都应一一对应 B.形参与实参的个数可以不必相同,少一个多一个程序一样执行C.形参与实参的类型可以不同,不影响运算结果D.形参与实参的类型个数相同,而顺序不同,计算机可以自动进行匹配,所以形参的顺序无所谓,只要各种形参类型的数量与实参相同即可解析:解析 形参、实参个数类型、数量、顺序应相同,因为类型转换都是有条件的,如果浮点型变量向指针型变量转换就是不可的。9.下面程序的输出结果是( )。 #include iostream using namespace std; void main( ) inta33 =1,2,3,4,5; int s =0; for(int i

    24、=1;i3;i+) for(int j=0;j=i;j+) s+=aij; coutsendl;(分数:2.00)A.12 B.4C.15D.13解析:解析 该程序将第 2行的前两个元素和第 3行的第 1个元素进行累加运算。10.下面程序的输出结果是( )。 #include iostream using namespace std; class point public: point(int px=10,int py=10) x=px;y=py; getpx( ) return x; getpy( ) return y; private: int x,y; ; void main(voiD)

    25、 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,15 B.p点的坐标是:0,0 q 点的坐标是:15,15C.p点的坐标是:0,0 q 点的坐标是:0,0D.p点的坐标是:10,10 q 点的坐标是:10,10解析:解析 此题是给构造函数的参数赋初值。在创建对象时,若对象不带参数,则类中变量的值为构造函数的初值;若创建对象时又给对象带了值

    26、,则用此值代替初值。11.软件开发的结构化生命周期方法将软件生命周期划分成( )。(分数:2.00)A.定义、开发、运行维护 B.设计阶段、编程阶段、测试阶段C.总体设计、详细设计、编程调试D.需求分析、功能定义、系统设计解析:解析 软件开发的结构化生命周期方法将软件生命周期划分成定义、开发和运行维护。12.软件开发离不开系统环境资源的支持,其中必要的测试数据属于( )。(分数:2.00)A.硬件资源B.通信资源C.支持软件D.辅助资源 解析:解析 软件开发离不开系统环境资源的支持,其中必要的测试数据属于辅助资源。13.关于保护继承的有关对象的说法,正确的是( )。(分数:2.00)A.基类成

    27、员对于子类的对象都是不可见的,子类成员的公有成员对子类的对象是可见的 B.子类成员对子类的对象是可见的,基类成员对子类的对象也都是可见的C.基类成员中的公有成员对子类的对象是可见的D.基类成员对子类是不可见的解析:解析 采用保护继承方式,基类成员对子类的对象都不可见的,子类成员的公有成员对子类的对象是可见的。14.将字符c输出不正确的是( )。(分数:2.00)A.char ch;ch=c;cou put(c;B.couput(c);C.coutc;D.coatc; 解析:解析 屏幕输出是将插入符作用在流类对象 cout上,格式:cout表达式。15.类的析构函数的作用是( )。(分数:2.0

    28、0)A.一般成员函数B.类的初始化C.对象的初始化D.删除对象 解析:解析 类的析构函数是在类的对象被释放的时候自动调用,它的作用是删除已经创建完成的对象。16.下列关于变量的说法中,正确的是( )。(分数:2.00)A.在复合语句中定义的变量也是局部变量,它的生存期在本复合语句执行完毕即告结束B.在一定范围内,整型变量和字符型变量可以相互赋值,如:int a;char s=a;a=s 是可以的 C.全局变量的有效范围是从该变量的定义位置开始到本工程结束D.char a;a=878*101;couta;,本复合语句输出的值为:88678解析:解析 选项 A对静态变量而言生存期是整个程序;选项

    29、C全局变量的有效范围是本文件;选项 D输出结果不正确17.软件设计中,有利于提高模块独立性的一个准则是( )。(分数: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) i

    30、nt w; while (v) w=u%v;u =v;v =w; return u; (分数:2.00)A.24B.12 C.48D.36解析:解析 注意运算符%的特点。19.下面程序的输出结果是( )。 #include iostream using namespace std; void main( ) int i=8,*p=0; p = coatp; (分数:2.00)A.0B.变量 i的地址 C.*p=0; 是错误的,因为不可给指针型变量赋予常数值D.8解析:解析 可以把 0赋给指针变量。20.如果重载不能重载的运算符会出现语法错误,下列不可以被重载的运算符是( )。(分数:2.00)

    31、A.B.*C.=D.sizeof 解析:解析 sizeof 也不可重载。21.对下列语句正确的描述是( )。 const int *x; int *const x;(分数:2.00)A.语句 1的含义是指针变量 x不能更改B.语句 2的含义是指针变量 x所指向的值不能更改C.语句 2的含义是指针变量 x不能更改 D.语句 1和语句 2含义是相同的解析:解析 语句 1的含义是指针变量 x所指向的地址的值不能更改。但是指针变量 x的值可以进行修改。22.下列不属于 3种基本控制结构是( )。(分数:2.00)A.顺序B.选择C.循环D.调用 解析:解析 顺序、选择和循环是程序的三种基本控制结构。2

    32、3.数据处理的最小单位是( )。(分数: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(解析:解析 该题是把 x的值分别代入两个 while的表达式中,比较它们的表达式值是否相同。25.对于函数的传址调用,下面说法中不正确的是( )。(分数:2.00)A.是把实参的地址传递给形参,所以形参、实

    33、参共用相同的存储空间B.形参值的改变会影响实参值C.传址调用可传给主调函数多个值D.既然形参与实参共用相同空间,则它们的生存期是相同的 解析:解析 形参、实参的生存期一般说来是不同的。26.n个顶点的连通图中边的条数至少为( )。(分数:2.00)A.0B.1C.n-1 D.n解析:解析 n 个顶点的连通图中边的条数至少为 n-1。27.关于模板函数与函数模板的说法,正确的是( )。(分数:2.00)A.其实质是一样的,只是说法不同B.两者的形参类型是一样的C.模板函数是函数模板的实例化 D.函数模板是模板函数的实例化解析:解析 模板函数是函数模板的实例化。28.关于下面程序的说法,正确的是(

    34、 )。 #include iostream 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行错误,不

    35、能对私变量引用D.没有错误,其输出结果为: 3 11 3 解析:解析 语句 x:geta;把基类中的公有成员说明为子类中的公有成员,因而可以为子类对象引用。29.若有 char ch10,则下列字符串数组的赋值中不正确的是( )。(分数:2.00)A.ch=“welcome“; B.ch0=w;C.strcpy(ch,“welcome“);D.char ch1=“welcome“;strcpy(ch,ch1);解析:解析 ch 是数组名,代表该数组的地址,是常量,不是变量,不能给其赋值。30.关于函数重载的说法,正确的是( )。(分数:2.00)A.函数的返回值类型在区别重载函数时起着举足轻重

    36、的作用B.参数的个数在区别重载函数时也起着重要的作用C.功能不同的两个函数也可以重载,这使得程序更简洁D.重载函数是靠参数的个数和类型来区分的,参数的名称和返回值类型是不起作用的 解析:解析 重载函数是靠参数的个数和类型来区分的,参数的名称和返回值类型是不起作用的。31.关于 getline函数,说法不正确的是( )。(分数:2.00)A.该函数接收的字符串长度是受限的,可以人为设置所接收字符串的长度,它所接收的字符串长度是这一长度值减 1B.该函数遇到换行符或其他终止符后结束操作C.该函数接收从键盘输入的字符串D.该函数是接收字符的函数 解析:解析 getline()一次读入一块字节,或者由

    37、一个换行符作为结束,或者由某个用户定义的终止字符作为结束。getline()格式:getline(char * sink,streamsize size,char delimiter=/n)。32.线性表的顺序存储结构和线性表的链式存储结构分别是( )。(分数:2.00)A.顺序存取的存储结构、顺序存取的存储结构B.随机存取的存储结构、顺序存取的存储结构 C.随机存取的存储结构、随机存取的存储结构D.任意存取的存储结构、任意存取的存储结构解析:解析 顺序存储结构中,数据元素存放在一组地址连续的存储单元中,每个数据元素地址可通过公式 LOC(ai)=LOC(a1)+(i-1)L计算得到,从而实现

    38、了随机存取。对于链式存储结构,要对某结点进行存取,都得从链的头指针指向的结点开始,这是一种顺序存取的存储结构。33.假设 person是一个类,p1 是该类的一个对象,p2 是一个指向 p1的指针,getname()是其中的一个函数,则下面对象的使用不正确的是( )。(分数:2.00)A.persogetname(); B.p1.getname();C.p1.person:getname();D.p2-getname();解析:解析 选项 B其实是选项 C的一种缩写,效果相同,通过类 person不能调用方法 getname()。34.下列程序段没有错误的是( )。(分数:2.00)A.int

    39、*p;cin*p;B.int*s,k;*s=100C.int *s ,k; char *p ,c; s=b=5;-a,执行后 b的值为 5 解析:解析 选项 A运算符有不同的含义;选项 B中表达式执行后 a的值应为 6.4;选项 C中表达式执行后 max的值为 7。二、B填空题/B(总题数:15,分数:30.00)36.在模块化设计过程中,U 【1】 /U用来衡量模块内部各个元素彼此结合的紧密程度。(分数:2.00)填空项 1:_ (正确答案:内聚)解析:解析 内聚是用来判断模块独立性的一个标准,用来衡量模块内部各个元素彼此结合的紧密程度。37.数据流图中父图和子图的平衡是指U 【2】 /U。

    40、(分数:2.00)填空项 1:_ (正确答案:子图的输入、输出数据流同父图中的输入输出完全一致)解析:解析 数据流图中父图和子图应平衡,即子图的输入、输出数据流同父图中的输入输出完全一致。38.实体关系图(E-R 图)是用来描述U 【3】 /U。(分数:2.00)填空项 1:_ (正确答案:描述数据对象及数据对象之间的关系)解析:解析 结构化分析方法中 ERD图用以数据建模,描述数据对象及数据对象之间的关系。39.二叉树由三个基本单元组成,即左子树,右子树和U 【4】 /U。(分数:2.00)填空项 1:_ (正确答案:根节点)解析:解析 二叉树由根节点、左子树和右子树组成。40.哈夫曼树是U

    41、 【5】 /U。(分数:2.00)填空项 1:_ (正确答案:带权路径长度最小的二叉树)解析:解析 哈夫曼树是带权路径长度最小的二叉树,又称最优二叉树。41.常量和变量的区别是:常量在程序运行中值不变,因此它的值在定义时便进行初始化;而尘量的值是可以改变的,U 【6】 /U类型的变量存储的是变量的地址。(分数:2.00)填空项 1:_ (正确答案:指针)解析:解析 指针类型的变量存储的是变量的地址。42.以/*开始,*/结束,在/*和*/之间的部分即为U 【7】 /U。(分数:2.00)填空项 1:_ (正确答案:注释部分)解析:解析 使用/*/注释必须要匹配。43.下面程序的输出结果是U 【

    42、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:_ (正确答案:61515)解析:解析 先调用 fun(d),d=1执行,局部静态变量 d的值为 6,输出 6,返回值为 6;再调用 fun(a+fun(d),即 fun(9)执行,静态局部变量的值为 15,输出 15,返回值为 15;最后再

    43、执行 main 方法中的输出语句,输出 fun(a+fun(d)的值 15。所以程序输出结果为 61515。44.下面函数返回数组中最大元素的下标,数组中元素个数为 t,将程序补充完整。 int findmax(int s,int t) int k,p; for(p=0,k=p;pt;p+) ifU 【9】 /U k=p; return k; (分数:2.00)填空项 1:_ (正确答案:(spsk))解析:解析 分析程序其他部分,k 存放最大元素的下标。45.void类型的指针是指指针指向的变量的数据类型是不固定的。对该指针进行操作时,应进行U 【10】 /U。(分数:2.00)填空项 1:

    44、_ (正确答案:强制类型转换)解析:解析 void 类型的指针是指指针指向的变量的数据类型是不固定的,使用时需进行强制类型转换。46.在定义类的对象时,C+程序将自动调用该对象的U 【11】 /U函数初始化对象自身。(分数:2.00)填空项 1:_ (正确答案:构造)解析:解析 构造函数用于对对象的初始化,构造函数与类同名,无返回值。47.由于静态成员函数不属于某个具体的对象,但它属于某个U 【12】 /U,所以它没有 this指针。(分数:2.00)填空项 1:_ (正确答案:类)解析:解析 使用 static关键字声明的函数成员是静态的,静态成员函数属于整个类,由同一个类的所有对象共同维护

    45、,为这些对象所共享。48.在派生类中使用基类的成员,可以显式地使用U 【13】 /U来使用基类成员。(分数:2.00)填空项 1:_ (正确答案:成员名限定符)解析:解析 程序要求显式调用某个类的成员时,必须使用成员名限定符。其一般格式: 类名:成员名 或 类名:成员名(参数表)49.输出带引号的字符串“hello world!”的语句是U 【14】 /U。(分数:2.00)填空项 1:_ (正确答案:cout“/“hello world!/”“;)解析:解析 使用转义字符“/”“输出引号。50.将函数模板中的参数实例化后,函数模板变为U 【15】 /U。(分数:2.00)填空项 1:_ (正确答案:模板函数)解析:解析 函数模板的数据类型参数标识符实际上是一个类型形参,在使用函数模板时,要将这个形参实例化为确定的数据类型。将类型形参实例化的参数称为模板实参,用模板实参实例化的函数称为模板函数。模板函数的生成就是将函数模板的类型形参实例化的过程。


    注意事项

    本文(【计算机类职业资格】二级C++笔试309及答案解析.doc)为本站会员(fatcommittee260)主动上传,麦多课文档分享仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知麦多课文档分享(点击联系客服),我们立即给予删除!




    关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

    copyright@ 2008-2019 麦多课文库(www.mydoc123.com)网站版权所有
    备案/许可证编号:苏ICP备17064731号-1 

    收起
    展开