【计算机类职业资格】二级C++笔试-241及答案解析.doc
《【计算机类职业资格】二级C++笔试-241及答案解析.doc》由会员分享,可在线阅读,更多相关《【计算机类职业资格】二级C++笔试-241及答案解析.doc(24页珍藏版)》请在麦多课文档分享上搜索。
1、二级 C+笔试-241 及答案解析(总分:100.00,做题时间:90 分钟)一、选择题(总题数:35,分数:70.00)1.假定 AB 为一个类,则执行 AB x;语句时将自动调用该类的(分数:2.00)A.有参构造函数B.无参构造函数C.拷贝构造函数D.赋值重载函数2.磁盘文件操作中,打开磁盘文件的访问方式中以追加方式打开文件的(分数:2.00)A.inB.outC.appD.ate3.实现运行时的多态性用(分数:2.00)A.重载函数B.构造函数C.析构函数D.虚函数4.友元函数的作用是(分数:2.00)A.提高程序的效率B.加强类的封装性C.实现数据的隐蔽性D.增加成员函数的种类5.设
2、 char 型变量 x 中的值为 10100111,则表达式(2+x)(3)的值是(分数:2.00)A.10101001B.10101000C.11111101D.010101016.下列叙述中正确的是(分数:2.00)A.数据库系统是一个独立的系统,不需要操作系统的支持B.数据库技术的根本目标是要解决数据的共享问题C.数据库管理系统就是数据库系统D.以上三种说法都不对7.通常初始化拷贝构造函数的参数是(分数:2.00)A.某个对象名B.某个对象的成员名C.某个对象的引用名D.某个对象的指针名8.在 C+语言程序中(分数:2.00)A.函数的定义可以嵌套,但函数的调用不可以嵌套B.函数的定义和
3、调用均可以嵌套C.函数的定义和调用均不可以嵌套D.函数的定义不可以嵌套,但函数的调用可以嵌套9.对下列二叉树进行前序遍历的结果是(分数:2.00)A.ZBTYCPXAB.ATBZXCYPC.ZBTACYXPD.ATBZXCPY10.下述关于数据库系统的叙述中正确的是(分数:2.00)A.数据库系统减少了数据冗余B.数据库系统避免了一切冗余C.数据库系统中数据的一致性是指数据类型一致D.数据库系统比文件系统能管理更多的数据11.与数学式子 (分数:2.00)A.3*xn/(2*x-1)B.3*x*n/(2*x-1)C.3*pow(x,n)*(1/(2*x-1)D.3*pow(n,x)/(2*x-
4、1)12.有以下程序int f1(int x, int y)return xy? x:y;int f2(int x, int y)return xy? y:x;main()int a=4,b=3,c=5,d,e,f;d=f1(a,B) ;d=f1(d,C) ;e=f2(a,B) ;e=f2(e,C) ;f=a+b+c-d-e;coutd“, “f“, “eend1;执行后输出结果是(分数:2.00)A.3,4,5B.5,3,4C.5,4,3D.3,5,413.下列运算符中,不能重载的是(分数:2.00)A.?:B.+C.-D.14.以下不能正确创建输出文件对象并使其与磁盘文件相关联的语句是(分
5、数:2.00)A.ofstream myfile:myfile, open(“d:ofiletxt“);B.ofstream *myfile=new ofstream;myfile-open(“d;ofile.txt“);C.ofstream myfile(“d:ofile.txt“);D.ofstream *myfilenew (“d:ofile.txt“);15.算法的时间复杂度是指(分数:2.00)A.算法程序运行的具体时间B.算法程序的长度C.算法程序执行过程中基本运算的次数D.运行时算法程序所占的内存容量16.已知类 A 中有公用数据成员 B *b;其中 B 为类名。则下列语句错误的
6、是(分数:2.00)A.A():d(newB.A(const A main()int a=4,b=3,c5;f(a,B) ;f(a,C) ;f(b,C) ;couta“,“b“,“cend1;执行后输出结果是(分数:2.00)A.3,4,5B.5,3,4C.5,4,3D.4,3,519.使用静态数据成员的好处不包括(分数:2.00)A.可以节省内存空间B.是为了解决数据共享问题C.可以直接用类名来引用D.可以提高运算速度20.在面向对象方法中,一个对象请求另一对象为其服务的方式是通过发送(分数:2.00)A.调用语句B.命令C.口令D.消息21.下面程序的输出结果是main()int a=15
7、, b=21,m=0;switch(a%3)case 0, m+; break;case 1 :m+;switch(b%2)default: m+;case 0:m+ ;break;coutmend1(分数:2.00)A.1B.2C.3D.422.下列数据结构中能使用对分查找的是(分数:2.00)A.二叉链表B.带链的栈C.有序线性链表D.有序顺序表23.若有以下程序:main()int k=2,i2,m;m=(k+i*=k);coutm“,“iend1;执行后的输出结果是(分数:2.00)A.8,6B.8,3C.6,4D.7,424.以下关于私有和保护成员的叙述中,不正确的是(分数:2.00
8、)A.私有成员不能被外界引用,保护成员可以B.私有成员不能被派生类引用,保护成员在公有继承下可以C.私有成员不能被派生类引用,保护成员在保护继承下可以D.私有成员不能被派生类引用,保护成员在私有继承下可以25.有关析构函数的说法中错误的是(分数:2.00)A.析构函数有且只有一个B.析构函数无任何函数类型C.析构函数和构造函数一样可以有形参D.析构函数的作用是在对象被撤销时做清理工作26.下列叙述中正确的是(分数:2.00)A.软件就是程序清单B.软件就是存放在计算机中的文件C.软件应包括程序清单以及运行结果D.软件包括程序和文档27.以下叙述中不正确的是(分数:2.00)A.在类的定义中通常
9、是用数据成员描述对象的属性,用成员函数描述对象的行为B.类的一个成员只能具有一种访问控制属性C.构造函数和析构函数是特殊的成员函数,因此不允许重载D.通过对象只能访问类的公有成员28.以下叙述中不正确的是(分数:2.00)A.一个类的所有对象都有各自的数据成员,它们共享函数成员B.一个类中可以有多个同名的成员函数C.一个类中可以有多个构造函数、多个析构函数D.在一个娄中可以声明另一个类的对象作为它的数据成员29.按“先进先出”原则组织数据的结构是(分数:2.00)A.有序表B.栈C.队列D.二叉树30.在关系数据库中,用来表示实体之间联系的是(分数:2.00)A.树结构B.网结构C.线性表D.
10、二维表31.执行下列程序的结果是main()float x1,y;y+x *+x;coutyend1;(分数:2.00)A.9.000000B.6.000000C.1.000000D.程序有错误32.若已定义 int a256,执行语句 couthexa;的结果是(分数:2.00)A.100B.256C.ffeD.ff33.以下有关析构函数的叙述中错误的是(分数:2.00)A.一个类只能定义一个析构函数B.析构函数和构造函数一样可以有形参C.析构函数不允许有显式的返回值D.析构函数名前必须冠有符号“”34.设有定义:Class personint num;char name10;public:
11、void init(int n,char*m);person std30则以下叙述不正确的是(分数:2.00)A.std 是一个含有 30 个元素的对象数组B.std 数组中的每个元素都是 person 类的对象C.std 数组中的每个元素都有自己的私有变量 num 和 nameD.std 数组中的每个元素都有各自的成员函数 init35.以下叙述中不正确的是(分数:2.00)A.C+语言中的文本文件以 ASCII 码形式存储数据B.C+语言中,对二进制文件的访问速度比文本文件快C.C+语言中,随机读写方式不适用于文本文件D.C+语言中,顺序读写方式不适用于二进制文件二、填空题(总题数:15,
12、分数:30.00)36.在深度为 4 的满二叉树中,叶子结点的个数为 【1】 。(分数:2.00)填空项 1:_37.在一个容量为 25 的循环队列中,若头指针 front9,尾指针 rear16,则该循环队列中共有 【2】 个元素。(分数:2.00)填空项 1:_38.在面向对象方法中,允许作用于某个对象上的操作称为 【3】 。(分数:2.00)填空项 1:_39.软件生命周期包括八个阶段。为使各时期的任务更明确,又可以分为以下三个时期:软件定义期,软件开发期,软件维护期。编码和测试属于 【4】 期。(分数:2.00)填空项 1:_40.在数据库系统中,数据具有独立性。由于数据的存储结构与逻
13、辑结构之间由系统提供映象,使得当数据的存储结构改变时,其逻辑结构可以不变,因此,基于逻辑结构的应用程序不必修改。这种独立性称为 【5】 。(分数:2.00)填空项 1:_41.在任何类中都有三种访问权限的数据成员,这三种权限是 public、private 和 【6】 。(分数:2.00)填空项 1:_42.下列程序的输出结果是 【7】 。# includeiostream. hvoid main() char a= “abcdabcabfgacd“int i1=0,i2=0,i=0;while (ai)if (ai=“a“) i1+;if (ai=“b“) i2+;i+;cout i1“ “
14、i2end1;(分数:2.00)填空项 1:_43.如下程序编译时发生错误,错误的原因是 show 函数实现语句错误,则正确的语句应该为 【8】 。# includeiostream.hclass testprivate:int num;public:test(int)void show();test: :test(int n) num=n;test: show() coutnumend1; void main()test T(10);T. show ( );(分数:2.00)填空项 1:_44.下列程序的运行结果是 【9】 。#includeiomanip. hint Func(int *
15、a, int n)int s=1;for(int i=0;in; i+)s*= * a+;return s;void main( )int a=1,2,3,4,5,6,7,8);int b=Func(a,6)+Fnnc(cout“b= “bend1;(分数:2.00)填空项 1:_45.下列程序的输出结果为 【10】 。#ineludeiostream. hint void main() int n=3, m=12;max(m, n)+cout“m=“m“, n= “nend1;(分数:2.00)填空项 1:_46.下面程序编译时发现 ma39 错误,其原因是 【11】 。# includei
16、ostream. hclass FunArrayint *pa; /指向一个数组空间int size; /数组元素个数public:FunArray(int a , int thesize): pa(A) , size(thesize) int Size( )return size;void main( )int s =3,7,2,1,5,4;FunArray ma (s, sizeof (s)/sizeof(int) );ma3 = 9coutma3end1;(分数:2.00)填空项 1:_47.下列程序的执行结果是 【12】 。#includeiostream. hclass Studen
17、tpublic:Student(int xx)x=xx;virtual float calcFuition( );protected:int x;float Student: calcTuition()return float(x* x)class GraduateStudent:public Studentpublic:GraduateStudent(int xx) :Student(xx) float calcTuition( );float GraduateStudent: calcTuition( )return float(x * 2);void main( )Student s(2
18、0);GraduateStudent gs(30);couts.calcTuition()“ “gs. calcTuition()end1;/计算学生 s 和研究生 gs 的学费(分数:2.00)填空项 1:_48.下列程序中需要清理动态分配的数组,划线处应有的语句是 【13】 。#includeiostream, hclass personint age, tall;public:person() age= 0; tall= 40; cout“A baby is born. “end1;person(int i) age=i, tall=40, cout“A old person. “end
19、1;person(int i, int i) age = i; tall = j; cout “ a old person with tall. “end1;person( ) cout“ person dead. “end 1;void show()cout“age= “age“ ,tall= “tallend1;void main()person * ptr;ptr = new person3;ptr0=person ( )ptr1=person(18);ptr2=person(20,120);for(int i=0;i3; i+)ptri. show( );_(分数:2.00)填空项 1
20、:_49.下列程序完成从文件读取文件显示的同时写入第二个文件,则在程序中划线部分应该出现的语句是 【14】 。#includeiostream, h#includefstream, hvoid main()fstream filel, file2;char fnl 10, fn210, ch;cout“输入源文件名“;cinfn1;cout“输入目标文件名“;cinfn2;file1. open(fn1, ios : in);_ while(ch=file1. get() ! =EOF)coutch;file2. put(ch)file1, close()file2, close();(分数:
21、2.00)填空项 1:_50.下列程序的输出结果是非曲直 【15】 。#includeiostream, hclass baseint x, y;public:base(int i, int j)x=i; y=j;virtual int add()return x+ y;class three: public baseint z;public:three(int i, int j, int k) :base(i, j)z=k; int add() return (base: add()+z); ;void main()three * q=new three(lO,20,30);coutq-ad
22、d()end1;(分数:2.00)填空项 1:_二级 C+笔试-241 答案解析(总分:100.00,做题时间:90 分钟)一、选择题(总题数:35,分数:70.00)1.假定 AB 为一个类,则执行 AB x;语句时将自动调用该类的(分数:2.00)A.有参构造函数B.无参构造函数 C.拷贝构造函数D.赋值重载函数解析:解析 当没有显式调用指定形式的构造函数,则系统自动调用无参构造函数,如果没有为类指定此构造函数,则系统自动为其生成一个最简单的无参构造函数。2.磁盘文件操作中,打开磁盘文件的访问方式中以追加方式打开文件的(分数:2.00)A.inB.outC.app D.ate解析:解析 根
23、据选项的含义,可知 app 表示追加的含义。可以选定正确答案为 C。3.实现运行时的多态性用(分数:2.00)A.重载函数B.构造函数C.析构函数D.虚函数 解析:解析 多态性是通过虚函数来完成的,不同类层次上的类通过虚函数,可以做到运行时根据指针的指向确定调用哪个对象的成员函数。4.友元函数的作用是(分数:2.00)A.提高程序的效率 B.加强类的封装性C.实现数据的隐蔽性D.增加成员函数的种类解析:解析 友元函数的引入是为了提高程序的效率,减少通过接口访问的限制,但却破坏了类的封装性。5.设 char 型变量 x 中的值为 10100111,则表达式(2+x)(3)的值是(分数:2.00)
- 1.请仔细阅读文档,确保文档完整性,对于不预览、不比对内容而直接下载带来的问题本站不予受理。
- 2.下载的文档,不会出现我们的网址水印。
- 3、该文档所得收入(下载+内容+预览)归上传者、原创作者;如果您是本文档原作者,请点此认领!既往收益都归您。
下载文档到电脑,查找使用更方便
5000 积分 0人已下载
下载 | 加入VIP,交流精品资源 |
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 计算机 职业资格 二级 笔试 241 答案 解析 DOC
