【计算机类职业资格】二级C++-224及答案解析.doc
《【计算机类职业资格】二级C++-224及答案解析.doc》由会员分享,可在线阅读,更多相关《【计算机类职业资格】二级C++-224及答案解析.doc(16页珍藏版)》请在麦多课文档分享上搜索。
1、二级 C+-224 及答案解析(总分:73.00,做题时间:90 分钟)一、选择题(总题数:38,分数:73.00)1.下列关于赋值运算符“=”重载的叙述中,正确的是_。(分数:2.50)A.赋值运算符只能作为类的成员函数重载B.默认的赋值运算符实现了“深层复制”功能C.重载的赋值运算符函数有两个本类对象作为形参D.如果己经定义了复制(拷贝)构造函数,就不能重载赋值运算符2.下列各组类型声明符中,含义相同的一组是_。(分数:1.00)A.unsigned long int 和 longB.signed short int 和 shortC.unsigned short 和 shortD.sho
2、rt int 和 int3.面向对象程序设计思想的主要特征中不包括_。(分数:2.50)A.继承性B.功能分解,逐步求精C.封装性和信息隐藏D.多态性4.关系数据库管理系统能实现的专门关系运算包括_。(分数:1.00)A.排序、索引、统计B.选择、投影、连接C.关联、更新、排序D.显示、打印、制表5.一个工作人员可以使用多台计算机,而一台计算机可被多个人使用,则实体工作人员与实体计算机之间的联系是_。(分数:1.00)A.一对一B.一对多C.多对多D.多对一6.下列关于派生类和基类的描述中,正确的是_。(分数:1.00)A.派生类成员函数只能访问基类的公有成员B.派生类成员函数只能访问基类的公
3、有和保护成员C.派生类成员函数可以访问基类的所有成员D.派生类对基类的默认继承方式是公有继承7.下列枚举类型的定义中,包含枚举值 3 的是_。(分数:2.00)A.enum testRED,YELLOW,BLUE,BLACK;B.enum testRED,YELLOW=4,BLUE,BLACK;C.enum testRED=-1,YELLOW,BLUE,BLACK;D.enum testRED,YELLOW=6,BLUE,BLACK;8.数据库设计中,用 ER 图来描述信息结构但不涉及信息在计算机中的表示,它属于数据库设计的_。(分数:2.50)A.需求分析阶段B.逻辑设计阶段C.概念设计阶段
4、D.物理设计阶段9.有以下程序: #include iostream using namespace std; class count static int n; public: count ( ) n+; static int test() for (int i = 0; i 4; i+ ) n+; return n; ; int count : n = 0; int main() coutcount : test()“ “; count c1, c2; coutcount : test()end1; return 0; 执行后的输出结果是 _ 。(分数:1.00)A.4 10B.1 2C.
5、22D.2410.有如下数组声明:int value 30;,下标值引用错误的是 _ 。(分数:2.00)A.value30B.value0C.value10D.value2011.下列语句分别是不同程序中的第一个输入输出语句。若去掉其中的“left”,输出效果将发生变化的是(分数:2.00)A.coutleftsetfill(“*“)357;B.coutleftsetw(5)357;C.coutleftsetw(5)“ABCDE“;D.coutleft“ABCDE“;12.下列控制对齐方式的操作符中,错误的是_。(分数:2.50)A.internalB.centerC.leftD.right
6、13.有如下类和变量定义: class Parents public: int publicData; private: int privateData; ; class dA:public Parents/*类体略*/; class dB:private Parents/*类体略*/; dA x; dB y; 下列表达式中正确的是_。(分数:2.50)A.publicDataB.privateDataC.privateDataD.publicData14.下列关于线性链表的描述中,正确的是_。 、只含有一个指针域来存放下一个元素地址 、指针域中的指针用于指向该结点的前一个或后一个结点(即前件
7、或后件) 、结点由两部分组成:数据域和指针域。(分数:2.50)A.仅、B.仅、C.仅、D.全部15.下面类的声明中的几个语句,正确的是(设定语句是主函数中的语句)_。 class TestClass private: int data; public: TestClass(int g_data) data=g_data; void show()coutdataendl; ;(分数:2.50)A.TestClass *p;B.TestClass m;C.TestClass.data=8;D.TestClass.show();16.下列关于函数的描述中,错误的是_。(分数:1.00)A.函数可以
8、没有返回值B.函数可以没有参数C.函数可以是一个类的成员D.函数不能被定义为模板17.下列运算符函数中肯定不属于类 FunNumber 的成员函数的是(分数:2.00)A.int operator-(FunNumber);B.FunNumber operator-( );C.FunNumber operator-(int);D.int operator-(FunNumber,FunNumber);18.下列关于运算符重载的叙述中,正确的是_。(分数:2.50)A.可以通过重载创造出新的运算符B.可以为重载运算符函数的参数设置默认值C.可以将部分运算符函数重载为非成员函数D.可以将任意运算符函数
9、重载为静态成员函数19.有如下类定义: class Point private: static int how_many; ; _how_many=0; 要初始化 Point 类的静态成员 how_many,下画线处应填入的内容是_。(分数:1.00)A.intB.static intC.int Point:D.static int Point:20.下列关于栈叙述正确的是 _ 。(分数:2.00)A.栈顶元素最先能被删除B.栈顶元素最后才能被删除C.栈底元素永远不能被删除D.以上三种说法都不对21.下列叙述中错误的是 _ 。(分数:2.00)A.主函数 main 也可以带形参B.函数中通过
10、return 返回函数值C.调用函数必须在一条独立的语句中完成D.一个函数中可以有多条 return 语句22.下列静态数据成员的特性中,错误的是 _。(分数:2.00)A.静态数据成员的声明以关键字 static 开头B.静态数据成员必须在文件作用域内初始化C.引导数据成员时,要在静态数据成员前加类名和作用域运算符D.静态数据成员不是一个类所有对象共享的23.下面程序的输出是 main() int x=100, a=10, b=20, ok1=5, ok2=0; if(ab) if(b! =15) if( ! ok1) else if(ok2) x= 10 x=-1 coutxend1; (
11、分数:2.00)A.-1B.0C.1D.不确定的值24.有如下程序 #includeiostream using namespace std; class MyClass public: MyClass()+count; MyClass()-count; static int getcount()return count; private: static int count; ; int MyClass:count=0; int main() MyClass obj; coutobj.getcount(); MyClass*ptr=new MyClass; coutMyClass:getcou
12、nt(); delete ptr; coutMyClass:getcount(); return 0; 程序的输出结果是_。(分数:2.50)A.121B.232C.221D.12225.下列函数中对调用它的函数没有起到任何作用的是(分数:2.00)A.void f1(double B.double f1(double x)return x-1.5;C.void f3(double x)-x;D.double f4(double *x)-*x; return*x;26.字符串“a+b=12/n/t”的长度为_。(分数:2.50)A.12B.10C.8D.627.在深度为 5 的满二叉树中,叶子
13、结点的个数为(分数:1.00)A.31B.32C.16D.1528.在 E-R 图中,用来表示实体联系的图形是_。(分数:2.50)A.椭圆图B.矩形C.菱形D.三角形29.如果表达式-x/y 中的“-”和“/”是作为友元函数重载的运算符,采用运算符函数调用格式,该表达式还可表示为_。(分数:1.00)A.operator/(x.operator-(),y);B.operator/(operator-(x),y);C.operator-().operator/(y);D.operator/(operator-(x);30.下列关于函数模板的描述中,正确的是_。(分数:2.50)A.函数模板是一
14、个实例函数B.使用函数模板定义的函数没有返回类型C.函数模板的类型参数与函数的参数相同D.通过使用不同的类型参数,可以从函数模板得到不同的实例函数31.有如下程序: #include iostream using namespace std: class Test public: Test() n+=2; Test() n-=3; ; static int getNum() return n; privaue: static int n: ; int Test:n=1; int main() Test* p=new Test; delete p; cout“n=“Test:getNum()en
15、d1; return 0; 执行后的输出结果是(分数:2.00)A.n=0B.n=1C.n=2D.n=332.若有如下语句 #includeiostream.h void main() int x=3; do x=x-2; coutx; while(!(-x); 则上面程序段_。(分数:2.50)A.输出的是 1B.输出的是 1 和-2C.输出的是 3 和 0D.是死循环33.以下 for 语句中不是死循环的是 _ 。(分数:2.00)A.for(int i=0;i1;+i);B.for(int i=0;+i);C.for(int i=1;i0;+i);D.for(;);34.下列关于 C+函
16、数的叙述中,正确的是_。(分数:2.00)A.函数不能自己调用自己B.每个函数都必须返回一个值C.每个函数至少要有一个参数D.函数在被调用之前必须先进行声明或定义35.在为一个类重载下列运算符时,只能作为该类成员函数重载的运算符是_。(分数:1.00)A.+B.()C.D.+36.有如下程序: #includeiostream using namespace std; class BASE public: BASE()cout“BASE“;) ; class DERIVED:public BASE public: DERIVED()cout“DERIVED“; ; int main()DERI
17、VED x;return 0; 执行后的输出结果是 _ 。(分数:2.00)A.BASEB.DERIVEDC.BASEDERIVEDD.DERIVEDBASE37.下列各种函数中,_ 不是类的成员函数。(分数:2.00)A.构造函数B.析构函数C.友元函数D.拷贝构造函数38.在进行了任何 C+流的操作后,都可以用 C+流的有关成员函数检测流的状态;其中只能用于检测输入操作的函数的函数名是_。(分数:2.50)A.failB.eofC.badD.good二级 C+-224 答案解析(总分:73.00,做题时间:90 分钟)一、选择题(总题数:38,分数:73.00)1.下列关于赋值运算符“=”
18、重载的叙述中,正确的是_。(分数:2.50)A.赋值运算符只能作为类的成员函数重载 B.默认的赋值运算符实现了“深层复制”功能C.重载的赋值运算符函数有两个本类对象作为形参D.如果己经定义了复制(拷贝)构造函数,就不能重载赋值运算符解析:2.下列各组类型声明符中,含义相同的一组是_。(分数:1.00)A.unsigned long int 和 longB.signed short int 和 short C.unsigned short 和 shortD.short int 和 int解析:解析 本题考查整型变量的类型,A、C 选项中前者为无符号的,后者为有符号的,D 选项中short int
19、 为 2 个字节,int 为 4 个字节。3.面向对象程序设计思想的主要特征中不包括_。(分数:2.50)A.继承性B.功能分解,逐步求精 C.封装性和信息隐藏D.多态性解析:4.关系数据库管理系统能实现的专门关系运算包括_。(分数:1.00)A.排序、索引、统计B.选择、投影、连接 C.关联、更新、排序D.显示、打印、制表解析:解析 关系数据库管理系统能实现的专门关系运算包括选择、投影、连接。5.一个工作人员可以使用多台计算机,而一台计算机可被多个人使用,则实体工作人员与实体计算机之间的联系是_。(分数:1.00)A.一对一B.一对多C.多对多 D.多对一解析:解析 因为一个人可以操作多个计
20、算机,而一台计算机又可以被多个人使用,所以两个实体之间是多对多的关系。6.下列关于派生类和基类的描述中,正确的是_。(分数:1.00)A.派生类成员函数只能访问基类的公有成员B.派生类成员函数只能访问基类的公有和保护成员 C.派生类成员函数可以访问基类的所有成员D.派生类对基类的默认继承方式是公有继承解析:解析 派生类成员函数不能访问基类的 private 成员,只能由基类的对象来访问。这才体现了C+的数据封装特性。7.下列枚举类型的定义中,包含枚举值 3 的是_。(分数:2.00)A.enum testRED,YELLOW,BLUE,BLACK; B.enum testRED,YELLOW=
21、4,BLUE,BLACK;C.enum testRED=-1,YELLOW,BLUE,BLACK;D.enum testRED,YELLOW=6,BLUE,BLACK;解析:解析 声明枚举类型的语法格式为:enum类型名枚举值表;枚举值表包含多个枚举值,它们用逗号隔开,每个枚举值就是一个枚举常量。枚举值有两种定义形式:一是值名;二是值名=整型常量。关于枚举类型有以下 4 点说明: 一个 enum 类型实际上是 int 类型的一个子集,其每一个枚举值代表一个整数。 n 个枚举值全部未赋常量值时,它们自左至右分别与整数 0,1,n-1 对应。 若第 i 个枚举值赋常量值为 m,则其未赋常量值的后续
22、枚举值分别与整数 m+1,m+2对应,直到下一个赋了值的枚举值或结束。因此,为枚举值赋的整型常量值应从左到右递增。 枚举类型的声明也可作为组声明若干整型符号常量的方法。也就是说,把每个要声明的符号常量作为一个枚举值,将各个枚举值合在一起定义成一个枚举类型。 对于本题来说,在选项 A 中,对 4 个枚举值没有赋常量值,所以它们从左到右与整数 0,1,2,3 相对应。因而选项 A 为正确选项。8.数据库设计中,用 ER 图来描述信息结构但不涉及信息在计算机中的表示,它属于数据库设计的_。(分数:2.50)A.需求分析阶段 B.逻辑设计阶段C.概念设计阶段D.物理设计阶段解析:解析 本题考查的知识点
23、是 E-R 图。E-R 图也即实体联系图(Entity Relationship Diagram),提供了表示实体型、属性和联系的方法,用来描述现实世界的概念模型。E-R 图设计属于数据库设计的需求分析阶段。9.有以下程序: #include iostream using namespace std; class count static int n; public: count ( ) n+; static int test() for (int i = 0; i 4; i+ ) n+; return n; ; int count : n = 0; int main() coutcount
- 1.请仔细阅读文档,确保文档完整性,对于不预览、不比对内容而直接下载带来的问题本站不予受理。
- 2.下载的文档,不会出现我们的网址水印。
- 3、该文档所得收入(下载+内容+预览)归上传者、原创作者;如果您是本文档原作者,请点此认领!既往收益都归您。
下载文档到电脑,查找使用更方便
5000 积分 0人已下载
下载 | 加入VIP,交流精品资源 |
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 计算机 职业资格 二级 C224 答案 解析 DOC
