【计算机类职业资格】二级C++笔试54及答案解析.doc
《【计算机类职业资格】二级C++笔试54及答案解析.doc》由会员分享,可在线阅读,更多相关《【计算机类职业资格】二级C++笔试54及答案解析.doc(14页珍藏版)》请在麦多课文档分享上搜索。
1、二级 C+笔试 54 及答案解析(总分:86.00,做题时间:90 分钟)一、B选择题/B(总题数:30,分数:60.00)1.下列关于派生类的描述中,错误的是( )。(分数:2.00)A.一个派生类可以作为另一个派生类的基类B.派生类至少有一个基类C.派生类的成员除了它自己的成员外,还包含了它的基类的成员D.派生类中继承的基类成员的访问权限到派生类中保持不变2.下面程序的功能是( )。 #include iostream #include string using namespace std; int main () int i=1, n=0; char s80,*p; p=s; strcp
2、y(p,“It is a book“); for (; *p != /0 ;p+) if(*p=) i=0; else if (i=0) n+; i=1; cout“n=“ nend1; return 0; (分数:2.00)A.统计字符串中的单词个数B.统计字符串中的空格个数C.统计字符串中的字母个数D.统计字符串中的全部字符个数3.设有以下语句,对 a 数组元素的引用中(其中 0=i10),不正确的是( )。 int a10=0,1,2,3,4,5,6,7,8,9),*p=a;(分数:2.00)A.ap-aB.*( #define MIN(x,y) (x)(y) ?(x) : (y) in
3、t main () int i,j,k; i=10; j=15; k=10*MIN(i,j); coutkend1; return 0; (分数:2.00)A.15B.100C.10D.1505.在一个长度为 n 的线性表中插入一个元素,最坏情况下需要移动的数据元素数目( )。(分数:2.00)A.1B.nC.n+1D.n/26.下列关于成员函数特征的描述中,错误的是( )。(分数:2.00)A.成员函数一定是内联函数B.成员函数可以重载C.成员函数可以设置参数的默认值D.成员函数可以是静态的7.若有以下程序: #include iostream using namespaces std; c
4、lass A public: A () A (int i) x1=i; void dispa() cout“xl=“xl“ , “; private: int x1; ; class B : public A public: B () B (int i):A(i+10) x2=i; void dispb() dispa (); cout “x2=“x2end1; private: int x2; ; int main () B b(2); b.dispb (): return 0; 程序运行后的输出结果是( )。(分数:2.00)A.x1=10,x2=2B.x1=12,x2=10C.x1=12
5、,x2=2D.x1=2,x2=28.下列关于 C+与 C 语言的关系的描述中,( )是错误的。(分数:2.00)A.C 语言是 C+语言的一个子集B.C+与 C 语言是兼容的C.C+对 C 语言进行了一些改造D.C+和 C 语言都是面向对象的9.数据库设计有两种方法,它们是( )。(分数:2.00)A.概念设计和逻辑设计B.模式设计和内模式设计C.面向数据的方法和面向过程的方法D.结构特性设计和行为特性设计10.若有以下程序: #include iostream using namespace std; class Base private: int a,b; public: Base(int
6、 x, int y) a=x; b=y; void show() couta“, “bend1; ; class Derive : public Base private: int c, d; public: Derive(int x, int y, int z,int m):Base(x,y) c=z; d=m; void show() coutc“, “dend1; ; int main ( ) Base b(50,50) ,*pb; Derive d(10,20,30,40); pb= pb-show ); return 0; (分数:2.00)A.10,20B.30,40C.20,30
7、D.50,5011.有以下程序: #include iostream #include math using namespace std; class point private: double x; double y; public: point(double a,double b) x=a; y=b; friend double distance(point a,point b) ; ; double distance(point a,point b) return sqrt (a.x-b.x)* (a.x-b.x)+(a.y-b.y)*(a.y-b.y); int main ( ) po
8、int pl(1,2); point p2 (5, 2); coutdistance (pl,p2) end1; return 0; 程序运行后的输出结果是( )。(分数:2.00)A.1B.5C.4D.612.若有以下程序: #include iostream using namespace std; class myClass private: int var; public: myClass(int i) var=i; void add() s+=var; static int s; void display() coutsend1; ; int myClass:s=0; int mai
9、n ( ) myClass a(1),b(2),c(3); a.add(); b.add(); c.dislay(); return O; 程序执行后的输出结果是( )。(分数:2.00)A.1B.4C.3D.713.需求分析最终结果是产生( )。(分数:2.00)A.项目开发计划B.需求规格说明书C.设计说明书D.可行性分析报告14.有如下程序: #include iostream using namespace std; class shapes protected: int x, y; public: void setvalue(int d, int w=O) x=d; y=w; vir
10、tual void disp()=O; ; class square : public shapes public: void disp () coutx*yend1; ; int main ( ) shapes *ptr; square s1; ptr= ptr-setvalue (10, 5) ;ptr-disp(); return 0; 执行上面的程序将输出( )。(分数:2.00)A.50B.5C.10D.1515.下列叙述中,正确的是( )。(分数:2.00)A.数据库的库结构包括数据库中各个记录的数据B.数据库中的数据不仅仅是数值型数据C.数据库管理系统的主要功能是建立数据D.数据
11、库文件的结构不能由系统自动生成16.下列运算符中,( )运算符不能在 C+中重载。(分数:2.00)A.?:B.+C.-D.=17.关系数据库管理系统能实现的专门关系运算包括( )。(分数:2.00)A.排序、索引、统计B.选择、投影、连接C.关联、更新、排序D.显示、打印、制表18.结构化程序设计主要强调的是( )。(分数:2.00)A.程序的规模B.程序的易读性C.程序的执行效率D.程序的可移植性19.以于下面定义的类 MyClass, 在函数 f()中将对象成员 n 的值修改为 50 的语句应该是( )。 class MyClass public: MyClass (int x) n=x
12、; void SetValue(int n1) n=n1; private: int n; ; int f() MyClass *ptr = new MyClass(45); _; (分数:2.00)A.MyClass(50)B.SetValue (50)C.ptr-SetValue(50)D.ptr-n=5020.对于建立良好的程序设计风格,下面有关数据说明描述错误的是( )。(分数:2.00)A.数据说明的次序规范化B.说明语句中变量安排有序化C.使用注释来说明复杂数据的结构D.数据说明次序可以任意排列21.以下内容不属于算法程序所占的存储空间的是( )。(分数:2.00)A.算法程序所占
13、的空间B.输入的初始数据所占的存储空间C.算法程序执行过程中所需要的额外空间D.算法执行过程中所需要的存储空间22.在 C+语言中,对函数参数默认值描述正确的是( )。(分数:2.00)A.函数参数的默认值只能设定一个B.一个函数的参数若有多个,则参数默认值的设定可以不连续C.函数参数必须设定默认值D.在设定参数的默认值后,该参数后面定义的所有参数都必须设定默认值23.以下 4 个选项中,属于浮点数常量的是( )。(分数:2.00)A.0x12B.-12345e-3C.le0.5D.e-524.如下图所示的 4 棵二叉树中,不是完全二叉树的是( )。 (分数:2.00)A.B.C.D.25.数
14、据的存储结构是指( )。(分数:2.00)A.数据所占的存储空间量B.数据的逻辑结构在计算机中的表示C.数据在计算机中的顺序存储方式D.存储在外存中的数据26.C+语言中,while 循环和 do-while 循环的主要区别是( )。(分数:2.00)A.do-while 的循环体至少无条件执行一次B.while 的循环控制条件比 do-while 的循环控制条件严格C.do-while 允许从外部转到循环体内D.do-while 的循环体不能是复合语句27.假定 MyClass 为一个类,那么下列的函数说明中,( )为该类的析构函数。(分数:2.00)A.voidMyClass();B.My
15、Class(int ;C.MyClass();D.MyClass();28.下列关于纯虚函数与抽象类的描述中,错误的是( )。(分数:2.00)A.纯虚函数是一种特殊的虚函数,它没有具体的实现B.抽象类是指具有纯虚函数的类C.一个基类中说明具有纯虚函数,该基类的派生类一定不再是抽象类D.抽象类只能作为基类来用,其纯虚函数的实现由派生类给出29.若有以下程序: #include iostream using namespace std; void sub(int x,int y, int *z) *z = y+x; int main() int a,b, c; sub (8,4, sub (6,
16、 a, sub(a,b, couta“, “b“, “cend1; return 0; 程序运行后的输出结果是( )。(分数:2.00)A.12,18,30B.-12,6,8C.6,8,10D.12,-18,1630.在进行了任何 C+流的操作后,都可以用 C+流的有关成员函数检测流的状态,其中只能用于检测刚进行的操作是否失败函数名是( )。(分数:2.00)A.failB.eofC.badD.good二、B填空题/B(总题数:13,分数:26.00)31.从逻辑结构看,线性表是典型的U 【1】 /U,树是典型的U 【2】 /U。(分数:2.00)填空项 1:_32.在面向对象方法学中,直接反
17、映了用户对目标系统的要求的模型是U 【3】 /U。(分数:2.00)填空项 1:_33.软件测试的目的是尽可能发现软件中错误,通常U 【4】 /U是在代码编写阶段可进行的测试,它是整个测试工作的基础。(分数:2.00)填空项 1:_34.一个项目具有一个项目主管,一个项目主管可管理多个项目,则实体“项目主管”与实体“项目”的联系属于U 【5】 /U的联系。(分数:2.00)填空项 1:_35.假定 w、x、y、z、m 均为血型变量,有如下程序段: w=1;x=2;y=3;z=4; m=(WX)?w:X; m=(my)?m:y; m=(mz)?m:z; 则该程序运行后,m 的值是U 【6】 /U
18、。(分数:2.00)填空项 1:_36.函数 sstrcmp()的功能是对两个字符串进行比较。当 s 所指字符串和 t 所指字符串相等时,返回值为0:当 s 所指字符串大于 t 所指字符串时,返回值大于 0;当 s 所指字符串大于 t 所指字符串时,返回值大于 0(功能等同于 strcmp()。请填空。 int Sstrcmp(char *S,char *t) while(*s returnU 【7】 /U; (分数:2.00)填空项 1:_37.若有以下程序: #include iostream using namespace std; int f(int x, int y) return
19、(y-x)*x; int main() int a=3,b=4,c=5,d; d=f(f(a,b) ,f(a,c) ); coutdend1; return 0; 执行后的输出结果是U 【8】 /U。(分数:2.00)填空项 1:_38.如果一个数组中的每个元素都是同一类的对象,则该数组被称为U 【9】 /U。(分数:2.00)填空项 1:_39.表达式 c3=c1.operator+(c2)或 c3=operator+(c1,c2)还可以表示为U 【10】 /U(分数:2.00)填空项 1:_40.下面程序的打印结果是U 【11】 /U。 #include iostream using na
20、mespace std; class Base public: Base(int x) a=x; void show() couta; private: int a; ; class Derived : public Base public: Derived(int i) :Base(i+1) ,b(i) void show() coutb; private: int b; ; int main ( ) Base b(5) , *pb; Derived d(1); pb= pb-show(); return 0; (分数:2.00)填空项 1:_41.下列程序在构造函数和析构函数中申请和释放类
21、的私有成员,请完成该类的实现。 class MyClass int *x; public: MyClass(int a) : MyClass(); ; MyClass:MyClass(int a) U 【12】 /U; MyClass:MyClass() U 【13】 /U; (分数:2.00)填空项 1:_42.有如下程序: #include iostream using namespace std; class AA public: virtual void f() cout “AA“; ; class BB : public AA public: BB() cout“BB“; ; cla
22、ss CC : public BB public: virtual void f() BB:f(); cout “CC“; ; int main() AA aa,*p; BB bb; CC cc; p= p-f(); return O; 运行后的输出结果U 【14】 /U(分数:2.00)填空项 1:_43.若有以下程序: #include iostream using namespace std; int main() char str10; cinstr; cout strend1; return 0; 当输入为: This is a program! 那么执行程序后的输出结果是U 【15
23、】 /U。(分数:2.00)填空项 1:_二级 C+笔试 54 答案解析(总分:86.00,做题时间:90 分钟)一、B选择题/B(总题数:30,分数:60.00)1.下列关于派生类的描述中,错误的是( )。(分数:2.00)A.一个派生类可以作为另一个派生类的基类B.派生类至少有一个基类C.派生类的成员除了它自己的成员外,还包含了它的基类的成员D.派生类中继承的基类成员的访问权限到派生类中保持不变 解析:解析 基类与派生类的关系如下: 基类是对派生类的抽象,派生类是对基类的具体化。基类抽取了它的派生类的公共特征,而派生类通过增加信息将抽象的基类变为某种有用的类型,派生类是基类定义的延续。 派
- 1.请仔细阅读文档,确保文档完整性,对于不预览、不比对内容而直接下载带来的问题本站不予受理。
- 2.下载的文档,不会出现我们的网址水印。
- 3、该文档所得收入(下载+内容+预览)归上传者、原创作者;如果您是本文档原作者,请点此认领!既往收益都归您。
下载文档到电脑,查找使用更方便
5000 积分 0人已下载
下载 | 加入VIP,交流精品资源 |
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 计算机 职业资格 二级 笔试 54 答案 解析 DOC
