【计算机类职业资格】二级C++笔试-210及答案解析.doc
《【计算机类职业资格】二级C++笔试-210及答案解析.doc》由会员分享,可在线阅读,更多相关《【计算机类职业资格】二级C++笔试-210及答案解析.doc(28页珍藏版)》请在麦多课文档分享上搜索。
1、二级 C+笔试-210 及答案解析(总分:100.00,做题时间:90 分钟)一、选择题(总题数:35,分数:70.00)1.以下选项中合法的实型常数是(分数:2.00)A.5 E 2.0B.E-3C2 E0D.1.3 E2.在面向对象方法中,实现信息隐蔽是通过对象的某一特性来实现的,这个特性是(分数:2.00)A.封装B.类C.对象D.继承3.执行下面程序中的输出语句后,a 的值是main()int a;cout(a3*5,a*4,a+5);(分数:2.00)A.65B.20C.15D.104.有以下程序main()int i1,j1,k2;if(j+|k+)执行后输出结果是(分数:2.00
2、)A.1,1,2B.2,2,1C.2,2,2D.2,2,35.有关构造函数的叙述不正确的是(分数:2.00)A.构造函数名必须和类名一致B.构造函数在定义对象时自动执行C.构造函数无任何函数类型D.在一个类中构造函数有且仅有一个6.已知语句 int m10;则下列引用的表示中正确的是(分数:2.00)A.int B.int C.int D.float 7.在软件生存周期中,能准确地确定软件系统必须做什么和必须具备哪些功能的阶段是(分数:2.00)A.概要设计B.需求分析C.可行性分析D.详细设计8.下列叙述中错误的是(分数:2.00)A.二又树不是线性结构B.线性表是非线性结构C.线性链表是线
3、性结构D.栈与队列是线性结构9.一棵二叉树中所含最少的结点数是(分数:2.00)A.0B.1C.2D.310.若有以下宏定义:# define N 2# define Y(n) (N+1)*n)则执行语句 z2*(N+Y(5);后的结果是(分数:2.00)A.语句有错误B.z=34C.z70D.z 无定值11.数据的独立性是数据库技术的重要特点之一。所谓数据独立性是指(分数:2.00)A.数据与程序独立存放B.不同的数据被存放在不同的文件中C.不同的数据只能被对应的应用程序所使用D.以上三种说法都不对12.若已定义int a1,2,3,4,5,6,7,8,9,10, *pa,i5;则对数组元素
4、的不正确的引用是(分数:2.00)A.ap-aB.* (switch(x)case 0: b+;case 1: a+;case 2: a+;b+;cout“a“a“b“bendl;(分数:2.00)A.a2,b=1B.a=1,b1C.a1,b=0D.a=2,b=214.设有如下说明typedef structint n;char c;double x;STD;则有以下选项,能正确定义结构体数组并赋初值的语句是(分数:2.00)A.STD tt21,A,62,2,B,75;B.STD tt2=“1,“A“,62,2,“B“,75;C.struc tt21,A,2,B;D.struct tt2=1
5、,“A“,62.5,2,“B“,75.0;15.在数据流图(DFD)中,带有名字的箭头表示(分数:2.00)A.模块之间的调用关系B.程序的组成成份C.数据的流向D.控制程序的执行顺序16.数据结构分为(分数:2.00)A.表、队列、堆栈和树B.逻辑结构C.存储结构D.逻辑结构与存储结构17.有以下程序main()int a5,b=4,c=3,d=2;if(abc)coutdendl;else if(c-1d)1)coutd+1endl;elsecoutd+2endl;执行后输出结果是(分数:2.00)A.2B.3C.4D.编译时有错,无结果18.以下关于友元函数的叙述不正确的是(分数:2.0
6、0)A.友元函数提供了类之间数据共事的一个途径B.一个友元函数可以访问任何类的任何成员C.友元函数破坏了数据的封装D.友元函数增加了程序设计的灵活性19.为了避免嵌套的 if.else 语句的二义性,C+规定与 else 配对的是(分数:2.00)A.缩排位置相同的 ifB.在其之前未配对时 ifC.在其之前未配对的最近的 ifD.同一行上的 if20.以下函数值的类型是fun ( float x)float y;y 3*x-4;return y;(分数:2.00)A.intB.不确定C.voidD.float21.以下叙述中正确的是(分数:2.00)A.构成 C 程序的基本单位是函数B.可以
7、在一个函数中定义另一个函数C.main()函数必须放在其他函数之前D.所有被调用的函数一定要在调用之前进行定义22.在“文件包含”预处理语句的使用形式中,当#include 后面的文件名用”括起时,寻找被包含文件的方式是(分数:2.00)A.直接按系统设定的标准方式搜索目录B.先在源程序所在的目录搜索,再按系统设定的标准方式搜索C.仅仅搜索源程序所在目录D.仅仅搜索当前目录23.以下程序的输出结果是int a, b;void fun()a100; b200; main()int a=5, b=7;fun();coutabendl;(分数:2.00)A.100200B.57C.200100D.7
8、524.假定其中的 x 的单位是角度且不考虑 值的精度,则与数学公式 (分数:2.00)A.B.C.D.25.对于以下带参数的 main()函数的第二形参,void main(int argc, _),不可能的形式是(分数:2.00)A.char * argvB.char argvC.char * *aD.char * m26.在最坏情况下,冒泡排序所需要的比较次数为(分数:2.00)A.n/2B.(n+1)/2C.n(n-1)/2D.n(n+1)/227.以下循环体的执行次数是main()int i,j;for(i0,j=1;ij+1;i+=2,j-) coutiendl;(分数:2.00)
9、A.3B.2C.1D.028.下列程序的运行结果是main()int a2,c=5;cout“a“a“b=“cendl(分数:2.00)A.a%2,b%5B.a=2,b5C.ad,bdD.a%d,b=%d29.执行完下列语句int a,b, *cint * p后 c 指向(分数:2.00)A.aB.bC.cD.无效地址30.有以下程序main()unionunsigned int n;unsigned char c;ul;u1.cA;coutu1.nendl;执行后输出结果是(分数:2.00)A.产生语法错B.随机值C.AD.6531.能保证对所有的参数能够结束的递归函数是(分数:2.00)A
10、.int f(int n) if(n1) return 1; else return n*f(n+1);B.int f(int n) if(n1) return 1; else return n*f(n-1);C.int f(int n) if(abs(n)1) return 1; else relurn n*n/2);D.int f(int n) if(n1) return 1; else return n*f(n*2);32.下列关于关系运算的叙述中正确的是(分数:2.00)A.投影、选择、连接是从二维表的行的方向来进行运算B.投影、选择、连接是从二维表的列的方向来进行运算C.并、交、差是
11、从二维表的列的方向来进行运算D.以上三种说法都不对33.下述关于数据库系统的叙述中正确的是(分数:2.00)A.数据库系统中数据的一致性是指数据类型一致B.数据库系统比文件系统能管理更多的数据C.数据库系统减少了数据冗余D.数据库系统避免了一切冗余34.设有语句int n,m;char a5,b;cinnamb;为了分别将 10 和 20 分别赋给 n 和 m,look 赋给 a,t 赋给 b,则正确的输入为(分数:2.00)A.10 “look“ 20 tCRB.10 “look“ 10C.10 look 20 tD.10CRlook20CRtCR35.有如下程序main()int n9;w
12、hile(n6)n-; coutnendl;该程序段的辅出结果是(分数:2.00)A.987B.876C.8765D.9876二、填空题(总题数:15,分数:30.00)36.所谓数据封装就是将一组数据和与这组数据有关操作组装在一起,形成一个实体,这实体也就是 【1】 。(分数:2.00)填空项 1:_37.在面面对泵方法中,一个对象请求另一对象为其服务的方式是通过发送 【2】 实现。(分数:2.00)填空项 1:_38.在关系数据库中,用来表示实体之间联系的是 【3】 。(分数:2.00)填空项 1:_39.在测试时,完全不考虑程序的内部结构和内部特征的测试方法称为 【4】 测试方法。(分数
13、:2.00)填空项 1:_40.一个项目具有一个项目主管,一个项目主管可管理多个项目。则实体集“项目主管”与实体集“项目”的联系属于 【5】 的联系。(分数:2.00)填空项 1:_41.执行语句序列char strl10=“ABCD“,str210=“XYZxyz“;for (int i=0; strli=str2i; i+)后,数组 str1 中的字符是 XYZxyz,数组 str2 中的字符串是 【6】 。(分数:2.00)填空项 1:_42.下列程序的执行结果是 【7】 。include iostream. hint a;int sum_a(void)a=a+5;return a;vo
14、id main(void)a = a+sum_a();coutaendl;(分数:2.00)填空项 1:_43.根据输出结果填空完成下面程序。# includeiostream. hclass Testprivate:static int val;int a;public:static int func( );void sfunc(Test ;【8】 /初始化静态变量 valint Test:func()return val+;void Test:sfunc(Test cout“Result3=“r.a;void main( )cout“Resultl=“Test:func( )endl;Te
15、st a;cout“Result2=“a. func( );a. sfunc(a)(分数:2.00)填空项 1:_44.下列程序的运行结果是 【9】 。# include iostream. hclass testprivate:int num;public:test()int TEST() return num+100;test();test:test()num=0;test:test()cout“Destructor is active“endl;void main()test x3coutx1. TEST()endl;(分数:2.00)填空项 1:_45.下列程序是一个函数模板,用于把数
16、组 a 的每个元素按照逆序放入数组 b 中。请填空完成该函数模板的定义templateclass Typevoid Func(Type a, Type b, 【10】 )for(int i=0;in;i+)bn-i-1=ai;(分数:2.00)填空项 1:_46.下列程序的运行结果是 【11】 。# includeiostream. h# includestring. hvoid main()char * a5=“stuent“,“worker“,“teacher“,“soldier“,“ peasant“;char * p1, * p2;p1=p2=a0for(int i=0;i5;i+)i
17、f(strcmp(ai,p1)0)p1=ai;if(strcmp(ai,p2)0)p2=ai;coutp1“,“p2endl;(分数:2.00)填空项 1:_47.下列程序编译时发现 pb-f(10);语句出现错误,其原因是 【12】 。# includeiostream. hclass Basepublic:void f(int x)cout“Base:“xendl;class Derived: public Basepublic:void f(char * str)cout“Derivcd:“strendl;void main(void)Derived * pd=new Derived;p
18、d-f(10)(分数:2.00)填空项 1:_48.下列程序的运行结果是 【13】 。# include iostream. hclass SomeClasspublic:SomeClass(int value) some_value=value;void show_data(void) coutdata“some_valueendl; ;static void set_data(int value) data=value; private:static int data;int some_value;int SomeClass:datavoid main(void)SomeClass my_
19、class(1001),your_class(2002);your_class. set_data(4004);my_elass. show_data()(分数:2.00)填空项 1:_49.下列程序用于打印出 ASC字符,其析构函数内的语句应为 【14】 。# includeiostream. h# ineludeiomanip, htemplateclass Tclass ArrayT * elems;int size;public:Array(int.s);Array()Ttemplateclass TArrayT:Array(int s)size=s;elems=new Tsizefo
20、r(int i=0;isize;i+)elemsi=0templatecelass TArrayT:Array()_template class TTtemplateclass Tvoid ArrayT:operator=(T temp)for(int i=0;isize;i+)elemsi=temp;void main()int i,n=26;Arrayint arr1(n)Arraychar arr2(n)for(i=0;in;i+)-.arr1i=a+i;arr2i=a+i;cout“ASCII 字符“endl;for(i=0;in;i+)coutsetw(8)arr1isetw(8)a
21、rr2iendl;(分数:2.00)填空项 1:_50.下列程序对加号进行了重载,划线部分的语句是 【15】 。# includeiostream. h# includemath. hclass Triangleint x,y,z;double area;public:Triangle(int i,int j, int k)double s;x=i;y=j;z=k;s=(x+y+z)/2.0;area=sqrt(s*(s-x)*(s-y)*(s-z);void disparea()cout“Area=“areaendl;friend double operator+(Triangle t1,T
22、riangle t2)_;void main()Triangle t1(3,4,5),t2(5,12,13);double s;cout“t1:“;t1.disparea()cout“t2:“;t2.disparea()s=t1+t2;tout“总面积:=“sendl;(分数:2.00)填空项 1:_二级 C+笔试-210 答案解析(总分:100.00,做题时间:90 分钟)一、选择题(总题数:35,分数:70.00)1.以下选项中合法的实型常数是(分数:2.00)A.5 E 2.0B.E-3C2 E0 D.1.3 E解析:解析 本题考查实型常数的指数表示法,可以肯定的是指数不能为小数即必须为
23、整数,故排除A由于符号 E 前面必须有数字,故 B 也是错误的。D 在指数符号后面没有数字,是错误的。答案为 C。2.在面向对象方法中,实现信息隐蔽是通过对象的某一特性来实现的,这个特性是(分数:2.00)A.封装 B.类C.对象D.继承解析:解析 封装是面向对象方法中的一种信息隐蔽技术。3.执行下面程序中的输出语句后,a 的值是main()int a;cout(a3*5,a*4,a+5);(分数:2.00)A.65B.20 C.15D.10解析:解析 本题考查逗号表达式的运算特点。逗号表达式是所有表达式中优先级最低的,从左到右结合,其求解过程是:将逗号表达式各表达式按从左到右的顺序依次求值,
- 1.请仔细阅读文档,确保文档完整性,对于不预览、不比对内容而直接下载带来的问题本站不予受理。
- 2.下载的文档,不会出现我们的网址水印。
- 3、该文档所得收入(下载+内容+预览)归上传者、原创作者;如果您是本文档原作者,请点此认领!既往收益都归您。
下载文档到电脑,查找使用更方便
5000 积分 0人已下载
下载 | 加入VIP,交流精品资源 |
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 计算机 职业资格 二级 笔试 210 答案 解析 DOC
