【计算机类职业资格】二级C++-213及答案解析.doc
《【计算机类职业资格】二级C++-213及答案解析.doc》由会员分享,可在线阅读,更多相关《【计算机类职业资格】二级C++-213及答案解析.doc(17页珍藏版)》请在麦多课文档分享上搜索。
1、二级 C+-213 及答案解析(总分:75.50,做题时间:90 分钟)一、选择题(总题数:40,分数:75.50)1.关于静态数据成员的描述中正确的是(分数:2.00)A.类的静态数据成员不是类的所有对象共享的数据B.类的静态数据成员不能被类的成员函数调用C.类的静态数据成员不能被类的构造函数调用D.类的静态数据成员必须进行初始化2.使用 ifstream 流类定义流对象并打开磁盘文件时,文件的隐含打开方式为_。(分数:1.00)A.ios:inB.ios:outC.ios:inlios:outD.没有默认3.C+语言中,表示一条语句结束的标号是_。(分数:2.50)A.#B.;C./D.4
2、.以下非法的赋值表达式是(分数:2.00)A.n(i2,+i);B.j+;C.+(i+1);D.xj0;5.数据库设计中,用 E-R 图来描述信息结构但不涉及信息在计算机中的表示,它属于数据库设计的 _ 。(分数:2.00)A.需求分析阶段B.逻辑设计阶段C.概念设计阶段D.物理设计阶段6.在类的定义中,用于为对象分配内存空间,对类的数据成员进行初始化并执行其他内部管理操作的函数是(分数:2.00)A.友元函数B.虚函数C.构造函数D.析构函数7.有函数模板声明和一些变量定义如下: templateclass T1,class T2,class T3T1 sum(T2,T3); double
3、d1,d2; 则下列调用中,错误的是_。(分数:3.00)A.sumdouble,double,double(d1,d2);B.sumdouble,double(d1,d2);C.sumdouble(d1,d2);D.sum(d1,d2);8.有如下定义: int a51,3,5,7,9, * p=a; 下列表达式中不能得到数值 5 的是(分数:2.00)A.a2B.a3C.*(p+2)D.*p+49.有类定义如下: class Type public: Type(int i=0); Type operator-(int); friend Type operator+(Type,Type);
4、private: int val: 若有对象定义“Type c1;”,则下列语句序列中,错误的是_。(分数:2.00)A.Type(3)+c1;B.c1+Type(3);C.3-c1;D.c1-3;10.有如下类声明: class XA int x; public: XA(int n)x=n; ; class XB:public XA int y; public: XB(int a,int b); ; 在构造函数 XB 的下列定义中,正确的是_。(分数:1.00)A.XB:XB(int a,int b):x(a),y(b)B.XB:XB(int a,int b):XA(a),y(b)C.XB:
5、XB(int a,int b):x(a),XB(b)D.XB:XB(int a,int b):XA(a),XB(b)11.有如下程序段: int i=2; do i*=i; cout“#“; if(i1000)break; while(1); 运行时,输出字符“#“个数是_。(分数:2.00)A.3B.4C.5D.612.下列函数原型声明中,错误的是_。(分数:2.00)A.int function(int m,int n);B.int function(int,int);C.int function(int m=3,int n);D.int function(int13.有如下函数模板定义:
6、 templatetypename T1,typename T2 T1 FUN(T2 n)return n*5,0; 若要求以 int 型数据 9 作为函数实参调用该模板,并返回一个 double 型数据,则该调用应表示为_。(分数:2.50)A.FUN(9)B.FUN9C.FUNdouble(9)D.FUN9(double)14.当使用 ifstream 流类定义一个流对象并打开一个磁盘文件时,文件的默认打开方式为_。(分数:1.00)A.ios_base:inB.ios_base:in | ios_base:outC.ios_base:outD.ios_base:in TestClass
7、() m+; TestClass (int n) m=n; static void test() m+; ; int TestClass:m=0; void main() TestClass A; TestClass B(3); A.test(); TestClass:test(); cout“m=“B.mendl; (分数:2.50)A.m=3B.m=4C.m=5D.m=616.下列关于二叉树的叙述中,正确的是_。(分数:1.00)A.叶子结点总是比度为 2 的结点少一个B.叶子结点总是比度为 2 的结点多一个C.叶子结点数是度为 2 的结点数的两倍D.度为 2 的结点数是度为 1 的结点数
8、的两倍17.己知类 X 是类 Y 的友元,类 Y 是类 Z 的友元,则 _。(分数:2.00)A.类 X 一定是类 Z 的友元B.类 Z 一定是类 X 的友元C.类 Z 的成员函数可以访问类 Y 的对象的任何成员D.类 K 的成员函数可以访问类 Y 的对象的任何成员18.软件按功能可以分为应用软件、系统软件和支撑软件(或工具软件)。下列属于应用软件的是_。(分数:2.50)A.编译程序B.操作系统C.教务管理系统D.汇编程序19.算法指的是 _。(分数:2.00)A.计算机程序B.解决问题的计算方法C.解决问题的有限运算序列D.排序算法20.对于语句 const int x=10;的描述正确的
9、是 _ 。(分数:1.00)A.该语句不允许定义为 int const x=10;B.在程序中可以重新对 X 赋值C.变量 X 不能使用+ +运算符D.const 关键字只能用来修饰常量21.有如下程序: #includeiostream #includecmath using std:cout; class Point public: friend double distance(const Point /p 距原点的距离 Point(int xx=0,int yy=0):x(xx),y(yy) / private: int x,y; ; double distance(const Poin
10、t int main() Point p1(3,4); coutdistance(p1); / return 0; 下列叙述中正确的是_。(分数:2.00)A.程序编译正确B.程序编译时语句出错C.程序编译时语句出错D.程序编译时语句出错22.下列关于析构函数的描述中,错误的是_。(分数:2.00)A.析构函数可以重载B.析构函数由系统自动调用C.每个对象的析构函数只被调用一次D.每个类都有析构函数23.下列程序的运行结果为_。 #includeiostream.h templateclass TT class FF TT a1,a2,a3; public: FF(TT b1,TT b2,TT
11、 b3)a1=b1;a2=b2;a3=b3; TT Sum()return a1+a2+a3; void main() FFintx(int(1.1),2,3),y(int(4.2),5,6);coutx.Sum()“y.Sum()endl;)(分数:1.00)A.6.1 15.2B.6 15C.6 15.2D.6.1 1524.有如下程序: #includeiostream using namespace std; void f1(int void f2(int x)+x; int main() int x=10,y=12; f1(x); f2(y); coutx+yendl; return
12、 0; 运行这个程序的输出结果是_。(分数:2.00)A.22B.23C.24D.2525.假定 MyClass 为一个类,那么下列的函数说明中, _ 为该类的析构函数。(分数:2.50)A.voidMyClass();B.MyClass(int n);C.MyClass();D.MyClass();26.下列情况中,不会调用拷贝构造函数的是_。(分数:2.50)A.用一个对象去初始化同一类的另一个新对象时B.将类的一个对象赋值给该类的另一个对象时C.函数的形参是类的对象,调用函数进行形参和实参结合时D.函数的返回值是类的对象,函数执行返回调用时27.Sample 是一个类,执行下面语句后,调
13、用 Sample 类的构造函数的次数是_。 Sample a2.*p=new Sample;(分数:2.50)A.0B.1C.2D.328.有如下头文件: int f1(); static int f2(); class MA public: int f3(); static int f4(); ; 在所描述的函数中,具有隐含的 this 指针的是_。(分数:1.00)Af1Bf2Cf3Df429.通常的拷贝初始化构造函数的参数是 _ 。(分数:1.00)A.某个对象名B.某个对象的成员名C.某个对象的引用名D.某个对象的指针名30.有如下函数模板声明: templatetypename,T
14、T Max(T a,T b)return(ab)?a:b; 下列对函数模板 Max()的调用中错误的是_。(分数:1.00)A.Max(3.5,4.5)B.Max(3.5,4)C.Maxdouble(3.5,4.5)D.Maxdouble(3.5,4)31.从工程管理角度,软件设计一般分为两步完成,它们是_。(分数:2.50)A.概要设计与详纲设计B.数据设计与接口设计C.软件结构设计与数据设计D.过程设计与数据设计32.关于类模板,下列表述中不正确的是_。(分数:3.00)A.类模板中声明的类称为模板类B.类模板只能有虚拟类型参数C.类模板本身在编译中不会生成任何代码D.类模板的成员函数都是
15、模板函数33.将运算符重载为类成员函数时,其参数表中没有参数,说明该运算符是 _ 。(分数:2.00)A.不合法的运算符B.一元运算符C.无操作数的运算符D.二元运算符34.有下列二叉树,对此二叉树前序遍历的结果为 _ 。 (分数:2.00)A.ACFHIBEDGB.ABCDEFGHIC.ABDEGCFHID.ABCDEFHGI35.下列数据结构中,能用二分法进行查找的是_。(分数:2.50)A.无序线性表B.线性链表C.二叉链表D.顺序存储的有序表36.对关系 S 和 R 进行集合运算,产生的元组属于 S 中的元组,但不属于 R 中的元组,这种集合运算称为 _ 。(分数:2.00)A.并运算
16、B.交运算C.差运算D.积运算37.有如下说明: int a10=1,2,3,4,5,6,7,8,9,10,*p=a; 则数值为 9 的表达式是_。(分数:1.00)A.*p+9B.*(p+8)C.*p+=9D.p+838.有如下程序: #includeiostream using namespace std; class Base public: Base(int x=0)coutx; ; class Derived:public Base public: Derived(int x=0)coutx; private: Base val; ; int main() Derived d(1);
17、 return 0; 程序执行后的输出结果是 _ 。(分数:2.00)A.100B.000C.010D.00139.一个函数带有参数说明时,则参数的默认值应该在 _ 中给出。(分数:2.00)A.函数定义B.函数声明C.函数定义或声明D.函数调用40.单个用户使用的数据视图的描述称为(分数:1.00)A.外模式B.概念模式C.内模式D.存储模式二级 C+-213 答案解析(总分:75.50,做题时间:90 分钟)一、选择题(总题数:40,分数:75.50)1.关于静态数据成员的描述中正确的是(分数:2.00)A.类的静态数据成员不是类的所有对象共享的数据B.类的静态数据成员不能被类的成员函数调
18、用C.类的静态数据成员不能被类的构造函数调用D.类的静态数据成员必须进行初始化 解析:解析 C类中的静态成员变量是该类中所有对象所共有的,它能够被类中的任何函数调用,所以选项 A) 、选项 B) 、选项 C) 是错误的。而类的静态数据成员是必须要进行初始化才能使用的。2.使用 ifstream 流类定义流对象并打开磁盘文件时,文件的隐含打开方式为_。(分数:1.00)A.ios:inB.ios:outC.ios:inlios:outD.没有默认 解析:解析 使用 ifstream 流类定义流对象并打开磁盘文件时,文件没有默认的打开方式。其中ios:in 是为输入而打开;iso:out 是为输出
19、而打开。3.C+语言中,表示一条语句结束的标号是_。(分数:2.50)A.#B.; C./D.解析:解析 C+语言中语句的结束符是分号。4.以下非法的赋值表达式是(分数:2.00)A.n(i2,+i);B.j+;C.+(i+1); D.xj0;解析:解析 对于任何一种赋值运算,其赋值号或复合赋值号左边必须是一个左值。左值是指具有对应的可由用户访问的存储单元,并且能够由用户改变其值的量。而在 C 选项中赋值号对应的是表达式“i+1”,不是一个左值,因此是非法的赋值表达式。5.数据库设计中,用 E-R 图来描述信息结构但不涉及信息在计算机中的表示,它属于数据库设计的 _ 。(分数:2.00)A.需
20、求分析阶段B.逻辑设计阶段C.概念设计阶段 D.物理设计阶段解析:解析 实体联系图 Entity-Relationsh 中 E-R 图为实体-联系图,提供了表示实体型、属性和联系的方法,用来描述现实世界的概念模型。6.在类的定义中,用于为对象分配内存空间,对类的数据成员进行初始化并执行其他内部管理操作的函数是(分数:2.00)A.友元函数B.虚函数C.构造函数 D.析构函数解析:解析 构造函数在创建对象时系统自动调用,其功能是使用给定的值将对象初始化。7.有函数模板声明和一些变量定义如下: templateclass T1,class T2,class T3T1 sum(T2,T3); dou
21、ble d1,d2; 则下列调用中,错误的是_。(分数:3.00)A.sumdouble,double,double(d1,d2);B.sumdouble,double(d1,d2);C.sumdouble(d1,d2);D.sum(d1,d2); 解析:解析 虚拟类型参数 T1 没有出现在模板函数的形参表中,因此在调用时不可能从模板函数的实参表中获得相应的信息,因此 T1 无法省略。而在选项 D 中省略了。8.有如下定义: int a51,3,5,7,9, * p=a; 下列表达式中不能得到数值 5 的是(分数:2.00)A.a2B.a3 C.*(p+2)D.*p+4解析:9.有类定义如下:
- 1.请仔细阅读文档,确保文档完整性,对于不预览、不比对内容而直接下载带来的问题本站不予受理。
- 2.下载的文档,不会出现我们的网址水印。
- 3、该文档所得收入(下载+内容+预览)归上传者、原创作者;如果您是本文档原作者,请点此认领!既往收益都归您。
下载文档到电脑,查找使用更方便
5000 积分 0人已下载
下载 | 加入VIP,交流精品资源 |
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 计算机 职业资格 二级 C213 答案 解析 DOC
