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

    【计算机类职业资格】计算机二级(C++)56及答案解析.doc

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

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

    【计算机类职业资格】计算机二级(C++)56及答案解析.doc

    1、计算机二级(C+)56 及答案解析(总分:4230.00,做题时间:90 分钟)一、选择题(每小题 2分,共 70分) 下列各(总题数:60,分数:4200.00)1.对于长度为 n的线性表,在最坏情况下,下列各排序法所对应的比较次数中正确的是_。 (分数:70.00)A.冒泡排序为 n/2B.冒泡排序为 nC.快速排序为 nD.快速排序为 n(n-1)/22.已知有定义 constintD=5; inti=1; doublef=0.32; charc=15; 则下列选项错误的是( )。 (分数:70.00)A.Private Sub Form_MouseDown(Button As Inte

    2、ger, Shift As Integer,_ X As Single, Y As Single) If Button=2 Then PopupMenu Bt, 2 End SubB.Private Sub Form_MouseDown(Button As Integer, Shift As Integer, _ X As Single, Y As Single) PopupMenu Bt End SuhC.Private Sub Form MouseDown(Button As Integer, Shift As Integer, _ X As Single, Y As Single) Po

    3、pupMenu Bt,0 End SubD.Private Sub Form_MouseDown(Button As Integer, Shift As Integer, _ X As Single, Y As Single) If (Button=vbLeftButton) Or ( Button=vbRightButton) Then PopupMenu Bt End Sub3.有以下程序 int fun(int n) if(n=1) return 1; else return(n+fun(n-1); main() int x; scanf(“%d“,x=fun(x);printf(“%d

    4、/n“,x); 执行程序时,给变量 x输入 10,程序的输出结果是_。 (分数:70.00)A.55B.54C.65D.454.执行下列程序段,结果是( )。 #includeiostreamh void main( ) int x=40; char y=C; int n; n=(x c=a(bD.929.设有定义 int x;float y;,则 10+x+y值的数据类型是( )。(分数:70.00)A.intB.doubleC.floatD.不确定30.表达式 10 5 则能通过 scanf语句正确给输入项读入数据的程序段是_。 (分数:70.00)A.*p= scanf(“%lf“,p)

    5、;B.*p= scanf(“%f“,p);C.p= scanf(“%lf“,*p);D.p= scanf(“%lf“,p);39.C+语言是以哪种语言为基础逐渐发展演变而成的一种程序设计语言( )。(分数:70.00)A.ASPB.CC.VBD.Java40.已知各变量的定义如下 int i=8,k,a,b; unsigned long w=5; double x=142,y=52; 则以下符合 C+语言语法的表达式是( )。 (分数:70.00)A.第一个B.最后一个C.全部D.字段值不惟一,不能存储41.下列程序的运行结果为( )。 #includeiostreamh void main(

    6、 ) int a=2; int b=a+1; cout a/b endl; (分数:70.00)A.实体完整性B.域完整性C.参照完整性D.以上各项都需要定义42.以下叙述中错误的是_。 (分数:70.00)A.C 语句必须以分号结束B.复合语句在语法上被看作一条语句C.空语句出现在任何位置都不会影响程序运行D.赋值表达式末尾加分号就构成赋值语句43.有如下程序 #include using namespace std; class Obj static int i; public: Obj()i+; Obj()i-; static int getVal()teturn i; ; int Ob

    7、j:i=0; void f ()Obj ob2;cout1;i+) f*=i;D.f=1; for(i=n;i=2;i-) f*=i;48.有以下类定义 classPoint public: Point(int x0,int y0)_xx;_yy; void Move (int xOff,int yOff _x xOff;_yyOff void Print() const cout(_x,_y)endl; private: int_x_y; ; 下列语句中会发生编译错误的是【 】 (分数:70.00)A.Pointpt;pt;Print();B.const Point pt;pt.Print(

    8、);C.Pointpt;pt.Move(1,2);D.const Point pt;pt.Move(1,2);49.下面程序错误的语句是( )。 # include iostreamh void main( ) int * p=new int1; p=9; cout * p endl; delete p; (分数:70.00)A.ValueB.VisibleC.DefaultD.Enabled50.在 C+语言中,不合法的实型数据的是( )。(分数:70.00)A.0.123B.123000C.21e35D.12351.有如下程序 #includeiostreamh int func(int

    9、a,int B) return(a+B) ; void main( ) int x=2,y=5,z=8,r; r=func(func(x,y),z); cout r; 该程序的输出的结果是( )。 (分数:70.00)A.12B.13C.14D.1552.类 A是类 B的友元,类 B是类 C的友元,则下列说法正确的是( )。(分数:70.00)A.构造函数可以重载,析构函数不能重载B.构造函数不能重载,析构函数可以重载C.构造函数可以重载,析构函数也可以重载D.构造函数不能重载,析构函数也不能重载53.有如下程序 #include using namespace std; class Base

    10、 protected; Base()cout0;-j) if(t=aj-1)break; aj:aj-1; aj=t; protected: int*a,n;指针 a用于存放数组首地址,n 用于存放数组元素个数 ; (分数:1.50)填空项 1:_65.以下程序的结果为 1。 #include”iostreamh” templatetypename T T total(T * data) T s=0; while( * data) s+= * data +; return s; int main2 int x = 2,4,6,8,0,12,14,16,18 ; cout total(x); r

    11、eturn 0; cout end1; (分数:1.50)填空项 1:_66.以下程序运行后的输出结果是 1。 main2 int x=0210; printf(“%X/n“,x); (分数:1.50)填空项 1:_67.创建对象数组时,对数组的每一个元素都将调用一次构造函数,如果没有显式给出数组元素的初值,则调用缺省构造函数,下列程序涉及到对象数组的创建和单个对象的创建,其输出结果是 1。 #include using namespace std; class Foo public: Foo(int X)cout D.9 解析:结构复合索引文件是 Visual FoxPro数据库中最普通的,

    12、也是最重要的一种索引文件,它会随着表的打开而自动打开。29.设有定义 int x;float y;,则 10+x+y值的数据类型是( )。(分数:70.00)A.intB.doubleC.float D.不确定解析:由算术运算符组成的表达式中,若含有不同类型的操作数,则系统隐含 地将低类型转化为高类型,由低至高的顺序为 int-float-double。30.表达式 10 5 则能通过 scanf语句正确给输入项读入数据的程序段是_。 (分数:70.00)A.*p= scanf(“%lf“,p);B.*p= scanf(“%f“,p);C.p= scanf(“%lf“,*p);D.p= sca

    13、nf(“%lf“,p); 解析:p=”,它等效于:int *p; p=, scanf()语句的格式是“scanf(格式控制,地址表列)”, 在选项 D 中,“p”本身就代表着一个地址,故选项 D 正确。39.C+语言是以哪种语言为基础逐渐发展演变而成的一种程序设计语言( )。(分数:70.00)A.ASPB.C C.VBD.Java解析:C+语言是对 C语言进行了扩充,继承了它的语法,并增加了面向对象的设计方法。40.已知各变量的定义如下 int i=8,k,a,b; unsigned long w=5; double x=142,y=52; 则以下符合 C+语言语法的表达式是( )。 (分数

    14、:70.00)A.第一个 B.最后一个C.全部D.字段值不惟一,不能存储解析:本题考查的是在继承中派生类的对象调用构造函数的顺序,应该 是先调用基类的构造函数,然后是成员中的对象对应类的构造函数,最后是派生类自己 的构造函数。41.下列程序的运行结果为( )。 #includeiostreamh void main( ) int a=2; int b=a+1; cout a/b endl; (分数:70.00)A.实体完整性B.域完整性 C.参照完整性D.以上各项都需要定义解析:随机文件流提供了访问文件中任意一段位置。如果是一个比较大的文件,我们采用略去前面不必要的内容,直接去读取需要的内容,

    15、随机文件流提供了这样的方法,这样会有很多的时间和资源。所以我们用 Random Stream来访问这个文件。在 Random Stream中有一个方法 public int skipBytes(int n)throws IOException,随机文件访问跳过指定的字节。这个方法比较有用,在本题的情况下,用它比较快捷的读取必要的内容。 42.以下叙述中错误的是_。 (分数:70.00)A.C 语句必须以分号结束B.复合语句在语法上被看作一条语句C.空语句出现在任何位置都不会影响程序运行 D.赋值表达式末尾加分号就构成赋值语句解析:“空语句出现在任何位置都不会影响程序运行”这句话是错误的,例如在

    16、 for 循环中,循环条件语 句为空时,则不判断循环条件,循环将无终止地进行下去,导致了此循环为死循环。43.有如下程序 #include using namespace std; class Obj static int i; public: Obj()i+; Obj()i-; static int getVal()teturn i; ; int Obj:i=0; void f ()Obj ob2;cout1;i+) f*=i;D.f=1; for(i=n;i=2;i-) f*=i; 解析:n!=n*(n-1)*2*1,由于选项 A 中 f 的初值为 0,所以循环 n 次后,f 值依然为 0

    17、,故选项 A 错误; 选项 B 中循环的终止条件是“i1 时,由于初值“i=n”是符合条件“i1”的,且增量为+1,故循环中永远不会出 现不满足条件“i1”的值,所以出现死循环。48.有以下类定义 classPoint public: Point(int x0,int y0)_xx;_yy; void Move (int xOff,int yOff _x xOff;_yyOff void Print() const cout(_x,_y)endl; private: int_x_y; ; 下列语句中会发生编译错误的是【 】 (分数:70.00)A.Pointpt;pt;Print();B.co

    18、nst Point pt;pt.Print();C.Pointpt;pt.Move(1,2);D.const Point pt;pt.Move(1,2); 解析:本题考核常对象、常数据成员与常成员函数。如果将一个对象说明为常对象,则通过该常对象只能调用它的常成员函数,不能调用其他的成员函数,D 选项中对象 pt 为常对象,而成员函数 Move()不是常成员函数,所以这样调用会发生编译错误。49.下面程序错误的语句是( )。 # include iostreamh void main( ) int * p=new int1; p=9; cout * p endl; delete p; (分数:7

    19、0.00)A.ValueB.VisibleC.DefaultD.Enabled 解析:将标题移动到页面页眉中,则标题在每一页上都显示;如果将标题移动到报表页眉中,则打印时只在第一页的开始位置出现。50.在 C+语言中,不合法的实型数据的是( )。(分数:70.00)A.0.123B.123000C.21e35 D.123解析:在 C+语言中,实数有两种形式表示,即十进制数形式和指数形式,在指数形式中,e3,21e35,e3,e 等都是不合法的指数形式。再如 123e3或 123E3都代表 123乘以 10的 3次方。注意,字母 e的前面必须有数字,且 e的后面必须是整数。51.有如下程序 #i

    20、ncludeiostreamh int 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; 该程序的输出的结果是( )。 (分数:70.00)A.12B.13C.14D.15 解析:语句 r= unc (func(x,y),z);中,fun(x,y)是一次调用函数,它的值作为 func另一次调用的实参。注意本题调用两次函数。52.类 A是类 B的友元,类 B是类 C的友元,则下列说法正确的是( )。(分数:70.00)A.构造函数可以重载,析构函数不能重载 B.

    21、构造函数不能重载,析构函数可以重载C.构造函数可以重载,析构函数也可以重载D.构造函数不能重载,析构函数也不能重载解析:所谓的访问控制只包含公有类型、私有类型和保护类型 3种,友元可以是一个函数,也可以是一个类。53.有如下程序 #include using namespace std; class Base protected; Base()cout0;-j) if(t=aj-1)break; aj:aj-1; aj=t; protected: int*a,n;指针 a用于存放数组首地址,n 用于存放数组元素个数 ; (分数:1.50)填空项 1:_ (正确答案:j=n-l)解析:给变量 j

    22、赋初值。65.以下程序的结果为 1。 #include”iostreamh” templatetypename T T total(T * data) T s=0; while( * data) s+= * data +; return s; int main2 int x = 2,4,6,8,0,12,14,16,18 ; cout total(x); return 0; cout end1; (分数:1.50)填空项 1:_ (正确答案:20)解析:本题考查模板函数的运用。要理解 * data 的含意。 66.以下程序运行后的输出结果是 1。 main2 int x=0210; print

    23、f(“%X/n“,x); (分数:1.50)填空项 1:_ (正确答案:88)解析: 由于八进制数以 0 开头,所以 0210 表示八进制数;“%X”的格式指以十六进制形式输出,输出十 六进制的“af”时以大写字母输出。所以本题可以先将 0210 化为十进制,然后再化为十六进制。67.创建对象数组时,对数组的每一个元素都将调用一次构造函数,如果没有显式给出数组元素的初值,则调用缺省构造函数,下列程序涉及到对象数组的创建和单个对象的创建,其输出结果是 1。 #include using namespace std; class Foo public: Foo(int X)cout bc) d=(

    24、543) 先算 54,为真,得 1,即:d=(13),此时 13,为假,得 0。 78.在 MyClass类的定义中,对赋值运算符“=“进行重载。请将画线处缺失的部分补充完整。 1 MyClass:operator=(const MyClass&rhs) if(this=&rhs )return*this; value=rhs.value; retum*this; (分数:1.50)填空项 1:_ (正确答案:const)解析:赋值运算符“=“的重载返回值声明为引用,而函数体中总是用语句 retum*this返回。79.C+语句 const char * const p= “hello“;,所定义的指针 p和它所指的内容都不能被 1。(分数:1.50)填空项 1:_ (正确答案:改变)解析:本题考查的是定义常量的关键字 const,由 sonst定义的变量的值不可以再改变,所以定义时必须进行初始化。80.C+程序是从 1 函数开始执行的。(分数:1.50)填空项 1:_ (正确答案:main)解析:所有的 C+语言程序都是从 main函数刀:始执行,而普通函数的存在是为了 简化 main函数的复杂程度。


    注意事项

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




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

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

    收起
    展开