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

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

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

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

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

    1、二级 C+-86 及答案解析(总分:70.00,做题时间:90 分钟)一、选择题(总题数:20,分数:38.00)1.将下面类 TestClass 中的函数 fun()的对象成员 n 值修改为 100 的语句应该是 _ 。 class TcstClass public: TestClass(int x)n=x; void SetNum(int n1)n=n1; private: int n; int fun() TestClass * ptr=new TestClass(45); _; (分数:2.00)A.TestClass(100)B.ptr-SetNum(100)C.SetNum(100

    2、)D.ptr-n=1002.设有定义 charstr80以下不能将输人数据 nrst/nsecond/CR)读取到数组 str 的语句是 _ 。(分数:2.00)A.cin.get(str,strlen(str);B.cin.getline(str,strlen(str);C.cinstr;D.dn.read(str,strlen(str);3.在面向对象方法中,一个对象请求另一个对象为其服务的方式是通过发送 _ 。(分数:2.00)A.调用语句B.命令C.口令D.消息4.有如下的对类“X”的说明,其中 _ 是错误的。 class X (分数:2.00)A.int a=10;B.X();pub

    3、lic:C.X(int val);D. X();5.下列关于顺序存储结构叙述中错误的是 _ 。(分数:2.00)A.存储密度大B.逻辑上相邻的结点物理上不必邻C.可以通过计算直接确定第 j 个结点的存储地址D.插入、删除运算操作不方便6.下列程序中横线处应填入的语句是_。 class Base public: void fun()cout“Base of fun“endl; ; class Derived:public Base void fun() _/显示基类的成员函数 fun() cout“Derived of fun“endl; ;(分数:2.00)A.fun();B.Base. fu

    4、n();C.Base: fun();D.Base-fun;7.下面的语句中错误的是(分数:2.00)A.int a5;int xa ;B.const int a5;int xa ;C.int n5;int * pnew inta ;D.const int n5;int * pnew inta ;8.设 a=1;b=2;,则(a+)+b 和 a+b 这两个表达式的值分别为 _ 。(分数:2.00)A.3,3B.3,4C.4,3D.4,49.设有表示学生选课的三张表,学生 S(学号,姓名,性别,年龄,身份证号),课程 C(课号,课名),选课SC(学号,课号,成绩),则表 SC 的关键字(键或码)为

    5、(分数:2.00)A.课号,成绩B.学号,成绩C.学号,课号D.学号,姓名,成绩10.面向对象程序设计将数据和什么放在一起,作为一个相互依存、不可分割的整体来处理?(分数:2.00)A.对数据的操作B.信息C.数据隐藏D.数据抽象11.有如下程序: #includeiostream using namespace std; class MyClass public: MyClass(int i=0)cout1;) MyClass(const MyClass) MyClassreturn*this; MyClass()cout4;) ; int main() MyClass obj1(1),ob

    6、j2(2),obj3(obj1); return 0; 运行时的输出结果是_。(分数:3.00)A.112444B.11114444C.121444D.1131444412.在 C+语言中,数据封装要解决的问题是(分数:1.00)A.数据的规范化B.便于数据转换C.避免数据丢失D.防止不同模块之间数据的非法访问13._ 不是构造函数的特征。(分数:1.00)A.构造函数的函数名与类名相同B.构造函数可以重载C.构造函数可以设置默认参数D.构造函数必须指定类型说明14.有下列程序: #includestdio.h void main() FILE *pf; char *s1=“China“,*s

    7、2=“Beijing“; pf=fopen(“abc.dat“,“wb+“); fwrite(s2,7,1,pf); rewind(pf); /*文件位置指针回到文件开头*/ fwrite(s1,5,1,pf); fclose(pf); 以上程序执行后 abc.dat 文件的内容是 _ 。(分数:2.00)A.ChinaB.ChinangC.ChinaBeij ingD.BeijingChina15.有如下定义 int a; float f; double i; 则表达式 4+a+i*f 的值的数据类型是 _。(分数:2.00)A.intB.floatC.doubleD.不确定16.下面程序的

    8、运行结果是 #includeiostreamh void main() int num=1; int ; void show_data(void) coutdata“some_valueendl; ; static void set_data(int value) data=value; private: static int data; int some_value ; int SomeClass:data void main(void) SomeClass my_class(1001),your_class(2002); your_class. set_data(4004); my_ela

    9、ss. show_data() (分数:2.00)25.软件测试分为白箱(盒)测试和黑箱(盒)测试,等价类划分法属于 1 测试。 (分数:2.00)26.请将下列类定义补充完整。 classBasepublic:void fun()cout“Base:fun”endl; class Derived:public Base public: void fun() 1/显式调用基类的 fun 函数 cout“Derived:fun”endl; (分数:2.00)27.软件生命周期一般可分为这样几个阶段:问题定义、可行性研究、 _ 1_ 、设计、编码、测试、运行和维护。 (分数:2.00)28.用于输

    10、出表达式值的标准输出流对象是 _ 1_ ,用于从键盘上为变量输入值的标准输入流对象是 _ 2_ 。 (分数:2.00)29.当循环队列非空且队尾指针等于队头指针时,说明循环队列已满,不能进行入队运算。这种情况称为 1。 (分数:1.00)30.如下程序定义了“单词”类 word,类中重载了运算符,用于比较“单词”的大小,返回相应的逻辑值。程序的输出结果为:After Sorting:Happy Welcome,请将程序补充完整。 #includeiostream #includestring using namespace std; class Word public: Word(string

    11、s):str(s) string getStr( )return str; 1constreturn(strwstr); friend ostream coutendl; void main() print (4); (分数:1.00)32.下列程序运行时的输出结果是 1。 #includeiostream using namespace std; int Xfun(int*a, int n); int main() int b6=-2, 6, 8, -3, 5, 4); coutXfun(b, 6)end1; return 0; int Xfun(int*a, int n) int x=0;

    12、 for(int*p=a; pa+n; p+)if(*p0)x+=*p; return X; (分数:2.00)33.将 x+y*z 中的“+”用成员函数重载,“*”用友元函数重载应写为 _ 1_ 。 (分数:1.00)34.设 i、j、k 均为 int 型变量,则执行完 for(i0,j10;ij;i,j) kij;语句后,k 的值为 1 。 (分数:2.00)35.根据下面的主程序,完成类的一种构造函数的最简单形式。 #includeiostream. h class base private: int num; public: 1; ; void main() base try(6);

    13、(分数:2.00)36.设某循环队列的容量为 50,如果头指针 front=45(指向队头元素的前一位置),尾指针 rear=10(指向队尾元素),则该循环队列中共有 1 个元素。 (分数:2.00)37.在程序设计阶段应该采取 1 和逐步求精的方法,把一个模块的功能逐步分解,细化为一系列具体的步骤,继而用某种程序设计语言写成程序。 (分数:2.00)38.在 C+中的实型数据分为三种类型,即单精度 float、双精度 double 和 1。 (分数:2.00)二级 C+-86 答案解析(总分:70.00,做题时间:90 分钟)一、选择题(总题数:20,分数:38.00)1.将下面类 Test

    14、Class 中的函数 fun()的对象成员 n 值修改为 100 的语句应该是 _ 。 class TcstClass public: TestClass(int x)n=x; void SetNum(int n1)n=n1; private: int n; int fun() TestClass * ptr=new TestClass(45); _; (分数:2.00)A.TestClass(100)B.ptr-SetNum(100) C.SetNum(100)D.ptr-n=100解析:解析 对象指针存放的是对象的地址,要访问对象指针所指向对象的成员。可以通过两种方式。(*指针).成员,或

    15、者是指针-成员。2.设有定义 charstr80以下不能将输人数据 nrst/nsecond/CR)读取到数组 str 的语句是 _ 。(分数:2.00)A.cin.get(str,strlen(str);B.cin.getline(str,strlen(str);C.cinstr;D.dn.read(str,strlen(str); 解析:解析 本题考查 cin 流对象的几种成员函数 get,getline,read 及流提取符的使用规则。3.在面向对象方法中,一个对象请求另一个对象为其服务的方式是通过发送 _ 。(分数:2.00)A.调用语句B.命令C.口令D.消息 解析:解析 在面向对象

    16、方法中,对象之间通过消息进行通信。消息中只包含传递者的要求,它告诉接受者需要做哪些处理,但并不指示接受者应该怎么完成这些处理,接受者独立决定采用什么方式完成所需的处理。4.有如下的对类“X”的说明,其中 _ 是错误的。 class X (分数:2.00)A.int a=10; B.X();public:C.X(int val);D. X();解析:5.下列关于顺序存储结构叙述中错误的是 _ 。(分数:2.00)A.存储密度大B.逻辑上相邻的结点物理上不必邻 C.可以通过计算直接确定第 j 个结点的存储地址D.插入、删除运算操作不方便解析:6.下列程序中横线处应填入的语句是_。 class Ba

    17、se public: void fun()cout“Base of fun“endl; ; class Derived:public Base void fun() _/显示基类的成员函数 fun() cout“Derived of fun“endl; ;(分数:2.00)A.fun();B.Base. fun();C.Base: fun(); D.Base-fun;解析:解析 派生类的同名非虚拟函数会覆盖基类的所有同名非虚拟函数,此时调用基类函数必须添加类限定符,因此选项 C 正确。7.下面的语句中错误的是(分数:2.00)A.int a5;int xa ; B.const int a5;i

    18、nt xa ;C.int n5;int * pnew inta ;D.const int n5;int * pnew inta ;解析:解析 在 C中定义数组时,数组的范围参数在静态定义时必须是一个常数,而在动态分配内存定义时可以是常数,也可以是一个赋了值的参数。故选项 A 是错误的定义方法。8.设 a=1;b=2;,则(a+)+b 和 a+b 这两个表达式的值分别为 _ 。(分数:2.00)A.3,3 B.3,4C.4,3D.4,4解析:9.设有表示学生选课的三张表,学生 S(学号,姓名,性别,年龄,身份证号),课程 C(课号,课名),选课SC(学号,课号,成绩),则表 SC 的关键字(键或

    19、码)为(分数:2.00)A.课号,成绩B.学号,成绩C.学号,课号 D.学号,姓名,成绩解析:解析 本题考查数据库关键字和表之间关系的相关知识。所谓关键字就是指表中的某个属性的值具有能唯一标识关系中元组。10.面向对象程序设计将数据和什么放在一起,作为一个相互依存、不可分割的整体来处理?(分数:2.00)A.对数据的操作 B.信息C.数据隐藏D.数据抽象解析:解析 面向对象语言包含 3 个要素,印对象,类和继承。这 3 个要素反映 7 面向对象的传统观念。面向对象程序设计的本质是把数据和对数据的操作当成一个整体即对象。11.有如下程序: #includeiostream using names

    20、pace std; class MyClass public: MyClass(int i=0)cout1;) MyClass(const MyClass) MyClassreturn*this; MyClass()cout4;) ; int main() MyClass obj1(1),obj2(2),obj3(obj1); return 0; 运行时的输出结果是_。(分数:3.00)A.112444 B.11114444C.121444D.11314444解析:解析 当创建 MyClass 类对象 obj1(1)和 obj2(2)时候,调用类构造函数会输出两个 1,然后创建类对象 obj3

    21、(obj(1)时,会调用拷贝类构造函数,输出一个 2,然后当 main 函数结束时候,调用三个对象的析构函数会输出三个 4。12.在 C+语言中,数据封装要解决的问题是(分数:1.00)A.数据的规范化B.便于数据转换C.避免数据丢失D.防止不同模块之间数据的非法访问 解析:解析 数据封装为了防止不同模块间数据的非法访问及修改。13._ 不是构造函数的特征。(分数:1.00)A.构造函数的函数名与类名相同B.构造函数可以重载C.构造函数可以设置默认参数D.构造函数必须指定类型说明 解析:14.有下列程序: #includestdio.h void main() FILE *pf; char *

    22、s1=“China“,*s2=“Beijing“; pf=fopen(“abc.dat“,“wb+“); fwrite(s2,7,1,pf); rewind(pf); /*文件位置指针回到文件开头*/ fwrite(s1,5,1,pf); fclose(pf); 以上程序执行后 abc.dat 文件的内容是 _ 。(分数:2.00)A.ChinaB.Chinang C.ChinaBeij ingD.BeijingChina解析:解析 本题考查 fwrite 的调用形式。 其格式为“fwrite(buffer,size,count,fp);”。 fwritie 函数的功能是对 fp 所指向的文件

    23、存入 count 次,每次存入一个大小为 size 的数据块,将存入的数据块存到 buffer 指向的内存区,如果 buffer 内存区有数据则将其覆盖。 本题中第一次调用 fwrite 函数,向文件中写入是 S2 的值“Beijing”,第二次调用 fwrite 函数,向文件中写入 S1 的值“China”,并将之前“。Beijing”的前几个字符覆盖,得到 Chinang。15.有如下定义 int a; float f; double i; 则表达式 4+a+i*f 的值的数据类型是 _。(分数:2.00)A.intB.floatC.double D.不确定解析:16.下面程序的运行结果是

    24、 #includeiostreamh void main() int num=1; int ; void show_data(void) coutdata“some_valueendl; ; static void set_data(int value) data=value; private: static int data; int some_value ; int SomeClass:data void main(void) SomeClass my_class(1001),your_class(2002); your_class. set_data(4004); my_elass. s

    25、how_data() (分数:2.00)解析:4004 1001解析 本题考查静态成员变量在不同对象间的共享现象。无论哪个对象修改了其静态变量的值,其他对象再访问该变量时已经发生了变化。25.软件测试分为白箱(盒)测试和黑箱(盒)测试,等价类划分法属于 1 测试。 (分数:2.00)解析:黑盒解析 等价类划分法是将所有可能的输入数据,即程序的输入域划分为若干部分(子集),然后从每个子集中选择少数具有代表性的数据作为测试用例。该方法是一种常用的黑盒用例分析方法。26.请将下列类定义补充完整。 classBasepublic:void fun()cout“Base:fun”endl; class

    26、Derived:public Base public: void fun() 1/显式调用基类的 fun 函数 cout“Derived:fun”endl; (分数:2.00)解析:Base:fun();。解析 本题考查的是虚基类的使用。使用符号“:”可以用来限定要访问的成员所在类的名称。在派生类中对基类成员的访问应读是唯一的,多继承情况下就需要通过使用对象作用域分辨来解决这种对基类成员访问的二义性问题;27.软件生命周期一般可分为这样几个阶段:问题定义、可行性研究、 _ 1_ 、设计、编码、测试、运行和维护。 (分数:2.00)解析:需求分析28.用于输出表达式值的标准输出流对象是 _ 1_

    27、 ,用于从键盘上为变量输入值的标准输入流对象是 _ 2_ 。 (分数:2.00)解析:cout cin 解析 根据输入输出流对象的定义而得。29.当循环队列非空且队尾指针等于队头指针时,说明循环队列已满,不能进行入队运算。这种情况称为 1。 (分数:1.00)解析:上溢30.如下程序定义了“单词”类 word,类中重载了运算符,用于比较“单词”的大小,返回相应的逻辑值。程序的输出结果为:After Sorting:Happy Welcome,请将程序补充完整。 #includeiostream #includestring using namespace std; class Word pub

    28、lic: Word(strings):str(s) string getStr( )return str; 1constreturn(strwstr); friend ostream coutendl; void main() print (4); (分数:1.00)解析:1 1 2 1 2 3 1 2 3 4 32.下列程序运行时的输出结果是 1。 #includeiostream using namespace std; int Xfun(int*a, int n); int main() int b6=-2, 6, 8, -3, 5, 4); coutXfun(b, 6)end1; re

    29、turn 0; int Xfun(int*a, int n) int x=0; for(int*p=a; pa+n; p+)if(*p0)x+=*p; return X; (分数:2.00)解析:23解析 函数 Xfun()的功能是求出数组 a 中所有大于 0 的元素的和。33.将 x+y*z 中的“+”用成员函数重载,“*”用友元函数重载应写为 _ 1_ 。 (分数:1.00)解析:operator+(operator*(y,z) 解析 C+中用成员函数重载 x*y 为:x.operator *(y),用友元函数重载 x*y 为:operator*(x,y),用成 员函数重载 x+y 为:x

    30、.operator+(y),用友元函数重载 x+y 为:operator+(x,y)。34.设 i、j、k 均为 int 型变量,则执行完 for(i0,j10;ij;i,j) kij;语句后,k 的值为 1 。 (分数:2.00)解析:10解析 该 for 语句以 i 为 0、j 为 10 初始化,循环条件是 ij,每次循环后 i 增 1、j 减 1,循环体是将 i 与 j 的和赋给 k。这样变量 k 将保存的是最后一次赋给它的值。一次循环后 i 为 1、j 为 9,二次循环后 i 为 2、j 为 8,五次循环后 i 为 5、j 为 5,继续第六次循环,将 i 与 j 的和 10 存于k 后

    31、,i 为 6、j 为 4,结束循环。所以循环执行后 k 为 10。35.根据下面的主程序,完成类的一种构造函数的最简单形式。 #includeiostream. h class base private: int num; public: 1; ; void main() base try(6); (分数:2.00)解析:base(int n)解析 注意,根据 main 函数中对类 base 的使用情况可知,base 类必须提供整型单参构造函数,同时要求构造其最简单的形式,故函数体为空。36.设某循环队列的容量为 50,如果头指针 front=45(指向队头元素的前一位置),尾指针 rear=

    32、10(指向队尾元素),则该循环队列中共有 1 个元素。 (分数:2.00)解析:15解析 队列个数=rear-front+容量。37.在程序设计阶段应该采取 1 和逐步求精的方法,把一个模块的功能逐步分解,细化为一系列具体的步骤,继而用某种程序设计语言写成程序。 (分数:2.00)解析:自顶向下解析 程序设计时,应先考虑总体,后考虑细节,逐步使问题具体化,对复杂的问题,应该设计一些子目标作为过渡。上述方法概括为:自顶向下,逐步求精。38.在 C+中的实型数据分为三种类型,即单精度 float、双精度 double 和 1。 (分数:2.00)解析:长双精度 long double解析 长精度类型一般用于高精度的科学运算。


    注意事项

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




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

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

    收起
    展开