【计算机类职业资格】计算机二级(C++)52及答案解析.doc
《【计算机类职业资格】计算机二级(C++)52及答案解析.doc》由会员分享,可在线阅读,更多相关《【计算机类职业资格】计算机二级(C++)52及答案解析.doc(22页珍藏版)》请在麦多课文档分享上搜索。
1、计算机二级(C+)52 及答案解析(总分:4230.00,做题时间:90 分钟)一、选择题(每小题 2 分,共 70 分) 下列各(总题数:60,分数:4200.00)1.关于关键字 class 和 typename,下列表述中正确的是_。(分数:70.00)A.程序中的 typename 都可以替换为 classB.程序中的 class 都可以替换为 typenameC.在模板形参表中只能用 typename 来声明参数的类型D.在模板形参表中只能用 class 或 typename 来声明参数的类型2.只能作为成员函数重载的是( )。(分数:70.00)A.类创建时B.创建对象时C.删除对
2、象时D.不自动调用3.while 和 do-while 循环的主要区别是( )。(分数:70.00)A.native2asciiB.ascii 2 nativeC.RMID.tnameser4.关于在调用模板函数时模板实参的使用,下列表述正确的是【 】(分数:70.00)A.对于虚拟类型参数所对应的模板实参,如果能从模板函数的实参中获得相同的信息,则都可以省略B.对于虚拟类型参数所对应的模板实参,如果它们是参数表中的最后的若干个参数,则都可以省略C.对于虚拟类型参数所对应的模板实参,若能够省略则必须省略D.对于常规参数所对应的模板实参。任何情况下都不能省略5.C流中重载的运算符是一个【 】(分
3、数:70.00)A.用于输出操作的非成员函数B.用于输入操作的非成员函数C.用于输出操作的成员函数D.用于输入操作的成员函数6.有如下程序 #includeiostreamh #define N2 #define M N+1 #define NUM 2 * M+1 void main( ) int i; for(i=1;i =NUM;i+) cout i 该程序中的 for 循环执行的次数是( )。 (分数:70.00)A.5B.6C.7D.87.下面程序错误的语句是( )。 # include iostreamh void main( ) int * p=new int1; p=9; cou
4、t * p endl; delete p; (分数:70.00)A.ValueB.VisibleC.DefaultD.Enabled8.要想使 2378965421 的输出为 237887 应用的语句是( )。(分数:70.00)A.cout 2378965421;B.cout fixed 2378965421:C.cout 2378965421 -0001:D.cout fixed 2378965421 -0001;9.下列程序的输出结果是( )。 #includeiostreamh void main( ) char * str=“12123434“; int x1=0,x2=0,x3=0
5、,x4=0,i; for(i=0;stri!=/0;i+) switch(stri) case1:x4+; case2:x3+; case3:x2+; case4:x1+; cout x1 “,“ x2 “,“ x3 “,“ x4; (分数:70.00)A.8,6,4,1B.8,6,3,2C.8,8,4,1D.8,6,4,210.有如下程序 #include using namespace std; class A public: virtual void func1()coutfunc1(); P-func2(); return 0; 运行此程序,屏幕上将显示输出【 】 (分数:70.00)
6、A.B1 B2B.A1 A2C.B1 A2D.A1 B211.如果表达式-X+y 中,-是作为成员函数重载的,+是作为成员函数重载的,则该表达式还可为( )。(分数:70.00)A.将继承这个类的所有行为B.子类将自动成为监听器C.不必实现任何不需要的 WindowListener 方法D.为了层次清楚,美观大方12.关于面向对象的程序设计方法,下列说法正确的是【 】(分数:70.00)A.“封装性“指的是将不同类型的相关数据组合在一起,作为一个整体进行处理B.“多态性“指的是对象的状态会根据运行时要求自动变化C.基类的私有成员在派生类的对象中不可访问,也不占内存空间D.在面向对象的程序设计中
7、,结构化程序设计方法仍有着重要作用13.C+语言中,表示一条语句结束的标号是( )。(分数:70.00)A.Caption 属性B.BackColor 属性C.ForeColor 属性D.Color 属性14.下列不是描述类的成员函数的是( )。(分数:70.00)A.构造函数B.析构函数C.友元函数D.拷贝构造函数15.对于模板定义关键字 class 和 typename 说法不正确的是( )。(分数:70.00)A.每次调用此过程,该过程中的局部变量都会被重新初始化B.在本过程中使用到的,在其他过程中定义的变量也为 Statci 型C.每次调用此过程时,该过程中的局部变量的值保持在上一次调
8、用后的值D.定义了该过程中定义的局部变量为“自动“变量16.在公有派生情况下,有关派生类对象和基类对象的关系,下列叙述不正确的是( )。(分数:70.00)A.尽量不要在循环中创建和释放对象B.在处理字符串对象时,尽量不要使用 StringBuffer 类C.避免使用过多的 synchronized 关键字D.先设计,后编码17.C+语言函数中不能由系统自动生成的是( )。(分数:70.00)A.结合型B.非结合型C.计算型D.非计算型18.设 int a=1,b=2;,则(a+)+b 和 a+ +b 这两个表达式的值分别为( )。(分数:70.00)A.3,3B.3,4C.4,3D.4,41
9、9.已知程序中已经定义了函数 test,其原型是 int test(int,int,int);,则下列重载形式中正确的是【 】(分数:70.00)A.char test (int,int,int);B.double test(int,int,double);C.int test(int,int,int=0);D.float test(int,int,float=3.5F);20.以下哪个基类中的成员函数表示纯虚函数?(分数:70.00)A.virtual void vf(int)B.void vf(int)=0C.virtual void vf(=0)D.virtual void yf(int
10、) 21.下列描述中哪个是正确的?(分数:70.00)A.私有派生的子类无法访问父类的成员B.类 A 的私有派生子类的派生类 C 无法初始化其祖先类 A 对象的属性,因为类 A 的成员对类 C 是不可访问的C.私有派生类不能作为基类派生子类D.私有派生类的所有子孙类将无法继续继承该类的成员22.设有程序段 int k=10; while(k=0)k=k-1; 则下面描述中正确的是( )。(分数:70.00)A.0B.1C.2D.523.下面程序的运行结果是( )。 #includeiostreamh class base protected: int a; public: base( )cou
11、t“0“; ; class basel:virtual base public: basel( )cout“1“; ; class base2:virtual base public: base2( )cout“2“; ; class derived:public basel,public base2 public: derived( )cout“3“; ; void main( ) derived obj; coutendl; (分数:70.00)A.123B.3120C.312D.301224.有以下程序 int fun(int x,int n) static int sum=0,i; f
12、or(i=0;iA.45B.50C.60D.5525.已知各变量的定义如下 int i=8,k,a,b; unsigned long w=5; double x=142,y=52; 则以下符合 C+语言语法的表达式是( )。 (分数:70.00)A.第一个B.最后一个C.全部D.字段值不惟一,不能存储26.下列叙述中正确的是_。 (分数:70.00)A.软件交付使用后还需要进行维护B.软件一旦交付使用就不需要再进行维护C.软件交付使用后其生命周期就结束D.软件维护是指修复程序中被破坏的指令27.以下程序的输出结果是( )。 #includeiostream.h voidreverse(inta
13、,intn) inti,t; for(i=0;in/2;i+) t=ai;ai=an-1-i;an-1-i=t; voidmain( ) int b10:=1,2,3,4,5,6,7,8,9,10;inti,s=0; reverse(b,8); for(i=6;i10;i+)s+=bi; coutS; (分数:70.00)A.22B.10C.34D.3028.若有说明语句 char a =“It is mine“; char *p=“It is mine“; 则以下不正确的叙述是( )。 (分数:70.00)A.continue 语句用于循环体中,结束循环B.continue 语句用于循环体中
14、,它使执行流跳出循环体中尚未执行的语句,并进行下一循环判断C.continue 可以用于 if 语句中D.continue 语句不能代替 break 语句29.对于重载的运算符 ,它是一个( )。(分数:70.00)A.RELEASE MEMORYB.RELEASE ALL LIKEA*C.RELEASE MEMORY LIKE A*D.CLEAR MEMORY LIKE A*30.设有如下三个关系表 , 下列操作中正确的是【 】 (分数:70.00)A.T=RSB.T=RSC.T=RSD.T=RS31.C+语言对 C 语言做了很多改进,C+语言相对于 C 语言的最根本的变化是( )。(分数:
15、70.00)A.12 32B.6 29C.2 3D.12 332.在 C+语言程序中,对象之间的相互通信通过( )。(分数:70.00)A.a=1;B.+i;C.a=a+1=5D.! (+a! =b-)33.下列程序的输出结果是【 】 #inClUdeiostream using namespace std; intmain() Char a“HellO,World“; Char*ptra; while(*ptr) if(*ptra float s; scanf(“%d“, s=*r*r; printf(“s=%f/n“,s); 出错的原因是_。 (分数:70.00)A.注释语句书写位置错误B
16、.存放圆半径的变量 r 不应该定义为整型C.输出语句中格式描述符非法D.计算圆面积的赋值语句中使用了非法变量35.执行下列程序段,结果是( )。 #includeiostreamh void main( ) int x=40; char y=C; int n; n=(xC.i=(int)j;D.i=j;38.有以下程序: void sort(int a,int n) int i,j,t; for(i=0;iA.1,2,3,4,5,6,7,8,9,10,B.1,2,7,6,3,4,5,8,9,10,C.1,2,7,6,5,4,3,8,9,10,D.1,2,9,8,7,6,5,4,3,10,39.
17、设函数 fun 的定义形式为: void fun(char ch,float x) 则以下对函数 fun 的调用语句中,正确的是_。(分数:70.00)A.fun(“abc“,3.0);B.t=fun(D,16.5);C.fun(65,2.8);D.fun(32,32);40.下面程序的功能是把 316 表示为两个加数的和,使两个加数分别能被 13 和 11 整除,在划线处应填入的是( )。 #includeiostream.h voidmain( ) inti=0,j,k; doi+;k=316-13*i;while(_); j=k/11; cout“316=13*“i“+11*“j; (分
18、数:70.00)A.7B.8C.11D.1241.下列程序的运行结果为( )。 # include iostreamh int i=0; classA public: A( ) i + + ; ; void main( ) A a,b3,* c; C=b; cout i endl; (分数:70.00)A.该宏组由 macro1 和 macro2 两个宏组成B.宏 macor1 由两个操作步骤(打开窗体、关闭窗体)组成C.宏 macro1 中 OpenForm 命令打开的是教师自然情况窗体D.宏 macro2 中 Close 命令关闭了教师自然情况和教师工资两个窗体42.以下类定义中可能会引起
19、错误的语句是( )。 class A public: A( ) /1 int i; /2 private: int j; /3 A(int i) i+; /4 ; (分数:70.00)A.1B.2C.3D.443.关于友元的概念错误的是( )。(分数:70.00)A.友元函数没有 this 指针B.调用友元函数时必须在它的实参中给出要访问的对象C.一个类的成员函数也可以作为另一个类的友元函数D.只能在类的公有段声明友元44.为了使模块尽可能独立,要求_。 (分数:70.00)A.模块的内聚程度要尽量高,且各模块间的耦合程度要尽量强B.模块的内聚程度要尽量高,且各模块间的耦合程度要尽量弱C.模块
20、的内聚程度要尽量低,且各模块间的耦合程度要尽量弱D.模块的内聚程度要尽量低,且各模块间的耦合程度要尽量强45.以下对结构体类型变量 td 的定义中,错误的是_。 (分数:70.00)A.B.C.D.46.下列关于输入流类成员函数 getline()的描述中,错误的是【 】(分数:70.00)A.该函数是用来读取键盘输入的字符串的B.该函数读取的字符串长度是受限制的C.该函数读取字符串时,遇到终止符便停止D.该函数读取字符串时,可以包含空格47.能正确表示逻辑关系:“a10 或 a0”的 C+语言表达式是( )。(分数:70.00)A.a =10 or a =0B.a =0 | a =10C.a
21、 =10 int i,j; for(i=0;i0) t=pi; pi=pj; pj=t; main() char *p5=“abc“,“aabdfg“,“abbd“,“dcdbe“,“cd“; f(p,5); printf(“%d/n“,strlen(p1); 程序运行后的输出结果是_。 (分数:70.00)A.2B.3C.6D.449.下列函数原型声明中错误的是【 】(分数:70.00)A.void Fun(int x0,int y0);B.void Fun(int x,int y);C.void Fun(int x,int y0);D.void Fun(int x0,int y);50.每
22、个 C+程序中都必须有且仅有一个( )。(分数:70.00)A.类B.预处理命令C.主函数D.语句51.不合法的 main 函数命令行参数表示形式是( )。(分数:70.00)A.for(表达式 1;0;表达式 3)B.for(表达式 1;1;表达式 3)C.for(表达式 1;表达式 3;)D.for(;表达式 3)52.关于静态数据成员的描述中正确的是( )。(分数:70.00)A.“=a+b+c/3”B.“(a+b+c)/3”C.“=(a+b+c)/3”D.以上表达式均错53.this 指针是 C+语言实现什么的一种机制?(分数:70.00)A.抽象B.封装C.继承D.重载54.有以下程
- 1.请仔细阅读文档,确保文档完整性,对于不预览、不比对内容而直接下载带来的问题本站不予受理。
- 2.下载的文档,不会出现我们的网址水印。
- 3、该文档所得收入(下载+内容+预览)归上传者、原创作者;如果您是本文档原作者,请点此认领!既往收益都归您。
下载文档到电脑,查找使用更方便
5000 积分 0人已下载
下载 | 加入VIP,交流精品资源 |
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 计算机 职业资格 二级 C52 答案 解析 DOC
