【计算机类职业资格】二级C++笔试313及答案解析.doc
《【计算机类职业资格】二级C++笔试313及答案解析.doc》由会员分享,可在线阅读,更多相关《【计算机类职业资格】二级C++笔试313及答案解析.doc(15页珍藏版)》请在麦多课文档分享上搜索。
1、二级 C+笔试 313及答案解析(总分:100.00,做题时间:90 分钟)一、B选择题/B(总题数:35,分数:70.00)1.下列函数的运行结果是( )。 #includeiostream.h int add(int a,int b); void main() extern int x,y; coutadd(x,y)endl; int x(20),y(5); int add(int a,int b) int s=a+b; return s; (分数:2.00)A.25B.30C.20D.152.在数据库设计中,将 E-R图转换为关系模式的过程属于( )。(分数:2.00)A.需求分析阶段B
2、.逻辑设计阶段C.概念设计阶段D.物理设计阶段3.下列程序的运行结果为( )。 #includeiostream.h void main() int a=2; int b=a+1; couta/bendl; (分数:2.00)A.0.66667B.0C.0.7D.0.666666664.下列程序运行后的输出结果是( )。 #includeiostream.h void fun(int,int,int*); void main() int x,y,z; fun(5,6, fun(7,x, fun(x,y, coutx“,“y“,“zendl; void fun(int a,int b,int *
3、c) b+=a; *c=b-a; (分数:2.00)A.5,5,5B.6,6,6C.5,6,7D.7,7,75.下列关于软件测试的描述中正确的是( )。(分数:2.00)A.软件测试的目的是证明程序是否正确B.软件测试的目的是使程序运行结果正确C.软件测试的目的是尽可能多地发现程序中的错误D.软件测试的目的是使程序符合结构化原则6.下列程序的输出的结果是( )。 #includeiostream.h void main() int i,k,a10,p3; k=5; for(i=0;i9;i+)ai=i; for(i=0;i3;i+)pi=ai*(i+1); for(i=0;i3;i+)k+=p
4、i*2; coutk; (分数:2.00)A.20B.21C.22D.237.下列关于模板的叙述中,错误的是( )。(分数:2.00)A.模板声明中的第一个符号总是关键字 templateB.在模板声明中用“”和“”括起来的部分是模板的形参表C.类模板不能有数据成员D.在一定条件下函数模板的实参可以省略8.下列运算符中,( )运算符在 C+中不能重载。(分数:2.00)A.B.Fraction operator-(Practio;C.FractionD.Fraction10.以下都是 C+语言标识符的是( )。(分数:2.00)A.dsfa,df4,fB.huhj,a,k2C.3k,hj_9D
5、._ok,jk,k811.有如下程序: #include iostream using namespace std; int main() int *p; *p = 9; cout “The value at p: “ *p; return 0; 编译运行程序将出现的情况是( )。(分数:2.00)A.编译时出现语法错误,不能生成可执行文件B.运行时一定输出:The value at p:9C.运行时一定输出:The value at p:*9D.运行时有可能出错12.下列程序输出的结果是( )。 #includestdio.h fun1(char a,char b)char c;c=a;a=
6、b;b=c; fun2(char*a,char b)char c;c=*a;*a=b;b=c; fun3(char*a,char*b)char c;c=*a;*a=*b;*b=c; void main() char a,b; a=A;b=B;fun1(a,b);putchar(a);putchar(b); a=A;b=B;fun2(putchar(a);putchar(b); a=A;b=B;fun3(putchar(a);putchar(b); putchar(/n); (分数:2.00)A.BABBABB.ABBBBAC.ABBABAD.ABABBA13.在 C+程序中,如果要求通过函数来
7、实现一种简单的功能,并且要求尽可能加快程序的执行速度,则应该选用( )。(分数:2.00)A.内联函数B.重载函数C.递归调用D.嵌套调用14.下列程序的输出结果是( )。 #includeiostream.h main() int m=5; if(m+5) coutm; else coutm-; (分数:2.00)A.7B.6C.5D.415.有如下程序: #include iostream using namespace std; class Base public: void fun() cout“Base:fun“endl; ; class Derived : public Base
8、public: void fun() _ cout“Derived:fun“endl; ; int main() Derived d; d.fun(); return 0; 已知其执行后的输出结果为: Base:fun Derived:fun 则程序中下划线处应填入的语句是( )。(分数:2.00)A.Basfun();B.Base:fun();C.Base-fun();D.fun();16.在 ios中提供控制格式的标志位中,( )是转换为十六进制形式的标志位。(分数:2.00)A.hexB.octC.decD.left17.类模板 templateclass Tclass x.,其中友元函
9、数 f对特定类型 T(如 int),使函数f(xint)成为 xint模板类的友元,则其说明为( )。(分数:2.00)A.friend voidf();B.friend voidf(xT);C.friend voidA:f();D.friend void CT:f(xT);18.下列程序的输出结果是( )。 #ificludeiostream using namespace std; int main() cout.fill(*); cout.width(5); coutoct100endl; return 0; (分数:2.00)A.*100B.*144C.100*D.144*19.线性表
10、进行二分法检索,其前提条件是( )。(分数:2.00)A.线性表以顺序方式存储,并按关键码值排好序B.线性表以顺序方式存储,并按关键码的检索频率排好序C.线性表以链式方式存储,并按关键码值排好序D.线性表以链式方式存储,并按关键码的检索频率排好序20.下列选项中不属于结构化程序设计方法的是( )。(分数:2.00)A.自顶向下B.逐步求精C.模块化D.可复用21.下列工具中为需求分析常用工具的是( )。(分数:2.00)A.PADB.PFDC.N-SD.DFD22.下列关于类和对象的叙述中,错误的是( )。(分数:2.00)A.一个类只能有一个对象B.对象是类的具体实例C.类是对某一类对象的抽
11、象D.类和对象的关系是一种数据类型与变量的关系23.只能作为成员函数重载的是( )。(分数:2.00)A.=B.+C.*D.new24.有如下类定义: class Foo public: Foo(int v) : value(v) / Foo() / private: Foo() / int value = 0; / ; 其中存在语法错误的行是( )。(分数:2.00)A.B.C.D.25.由于常对象不能被更新,因此( )。(分数:2.00)A.通过常对象只能调用它的常成员函数B.通过常对象只能调用静态成员函数C.常对象的成员都是常成员D.通过常对象可以调用任何不改变对象值的成员函数26.实现
12、运行时的多态性要使用( )。(分数:2.00)A.重载函数B.析构函数C.构造函数D.虚函数27.下列有关指针的用法中错误的是( )。(分数:2.00)A.int i;int *p=B.int i;int *p;i=*p;C.int *p;p=0;D.int i=5;int *p;p=28.结构化分析方法是面向( )的自顶向下、逐步求精进行需求分析的方法。(分数:2.00)A.对象B.数据结构C.数据流D.目标29.有如下类定义: class AA int a; public: int getRef()const return / int getValue()const return a; /
13、 void set(int n)const a=n; / friend void show(AA aa)const couta; / ; 其中的四个函数定义中正确的是( )。(分数:2.00)A.B.C.D.30.下列关于结构化程序设计原则和方法的描述中,错误的是( )。(分数:2.00)A.选用的结构只准许有一个入口和一个出口B.复杂结构应该用嵌套的基本控制结构进行组合嵌套来实现C.不允许使用 GOTO语句D.语言中所没有的控制结构,应该采用前后一致的方法来模拟31.下列选项中,不是算法的基本特征的是( )。(分数:2.00)A.完整性B.可行性C.有穷性D.拥有足够的情报32.软件需求分析
14、阶段的工作,可以分为 4个方面:需求获取、需求分析、编写需求规格说明书以及( )。(分数:2.00)A.阶段性报告B.需求评审C.总结D.都不正确33.下列程序的运行结果为( )。 #includeiostream.h void main() int a=2; int b=a+1; couta/bendl; (分数:2.00)A.0.66667B.0C.0.7D.0.6666666634.有如下程序: int x=3; do x-=2; coutx; while(!(-x); 执行这个程序的输出结果是( )。(分数:2.00)A.1B.30C.1-2D.死循环35.用链表表示线性表的优点是(
15、)。(分数:2.00)A.便于随机存取B.花费的存储空间较顺序存储少C.便于插入和删除操作D.数据元素的物理顺序和逻辑顺序相同二、B填空题/B(总题数:15,分数:30.00)36.数据库系统的主要特点为数据集成性、数据的高 1 和低冗余性、数据独立性和数据统一管理和控制。(分数:2.00)填空项 1:_37.数据库的逻辑模型设计阶段的任务是将 1 转换成关系模式。(分数:2.00)填空项 1:_38.在面向对象方法中, 1 描述的是具有相似属性与操作的一组对象。(分数:2.00)填空项 1:_39.最简单的交换排序方法是 1。(分数:2.00)填空项 1:_40.在链表的运算过程中,能够使空
16、表与非空表的运算统一的结构是 1。(分数:2.00)填空项 1:_41.插入排序算法的主要思想:每次从未排序序列中取出一个数据,插入到已排序序列中的正确位置。Insert类的成员函数 sort()实现了插入排序算法,请填空。 class Insert public: Insert(int *b0,int n0):b(b0),n(n0);/参数 b0是某数组首地址,n 是数组元素个数 void sort() /此函数假设已排序序列初始化状态只包含 b0,未排序序列初始为 b1.bn-1 for(int i=1;in;+i) int t=bi; int j; for(_;j0;-j) if(t=b
17、j-1) break; bj=bj-1; bj=t; (分数:2.00)填空项 1:_42.若有函数 fun(x,y),并且已经使函数指针变量 p指向函数 fun,则使用 p调用函数 fun的方法是_。(分数:2.00)填空项 1:_43.阅读下列程序: #includeiostream.h void fun(int n) int x(5); static int y(10); if(n0) +x; +y; coutx“,“yendl; void main() int m(1); fun(m); 则该程序的输出结果是_。(分数:2.00)填空项 1:_44.下面是一个栈类的模板,其中 push
18、函数将元素 i压入栈顶,pop 函数弹出栈顶元素。栈初始为空,top值为 0,栈项元素在 stacktop-1中,在下面横线处填上适当语句,完成栈类模板的定义。 templateclass T class Tstack enumsize=1000; T stacksize; int top; public: Tstack():top(0) void push(const T Tpop() if(top=0)exit(1);/栈空时终止运行 return _; ;(分数:2.00)填空项 1:_45.类中数据成员和成员函数的默认访问级别为 1。(分数:2.00)填空项 1:_46.在下列的程序的
19、横线处填上适当的语句,使该程序的输出为 12。 #includeiostream.h using namespace std; class Base public: int a,b; Base(int i)a=i; ; class Derived:public Base int a; public: Derived(int x):Base(x),b(x+1); void show() _;/输出基类数据成员 a的值。 coutbendl; ; void main() Derived d(1); d.show(); return 0; (分数:2.00)填空项 1:_47.下列程序的输出结果为
20、2,请将程序补充完整。 #include iostream using namespace std; class Base public: _void fun() cout1; ; class Derived:public Base public: void fun()cout2; ; int main() Base*p=new Derived; p-fun(); delete p; return 0; (分数:2.00)填空项 1:_48.有如下程序: #include iostream using namespace std; class PARENT public: PARENT() c
21、out “PARENT“; ; class SON : public PARENT public: SON() cout “SON“; ; int main() SON son; PARENT *p; p = return 0; 执行上面程序的输出是_。(分数:2.00)填空项 1:_49.在 MyClass类的定义中,对赋值运算符;进行重载。请将横线处缺失的部分补充完整。 _MyClass:operator=(const MyClass value = rhs.value; return *this; (分数:2.00)填空项 1:_50.如下类定义中包含了构造函数和拷贝构造函数的原型声明,
22、请在横线处填写正确的内容,使拷贝构造函数的声明完整。 class myClass private: int data; public: myClass(int value); /构造函数 myClass(const_anotherObject); /拷贝构造函数 (分数:2.00)填空项 1:_二级 C+笔试 313答案解析(总分:100.00,做题时间:90 分钟)一、B选择题/B(总题数:35,分数:70.00)1.下列函数的运行结果是( )。 #includeiostream.h int add(int a,int b); void main() extern int x,y; cout
23、add(x,y)endl; int x(20),y(5); int add(int a,int b) int s=a+b; return s; (分数:2.00)A.25 B.30C.20D.15解析:解析 由主函数 main入手,定义外部变量 x和 y,调用函数 add。因为 x,y 为外部变量,所以“int x(20),y(5);”的赋值在 add也是有效的,即 add函数的运算结果为 25。2.在数据库设计中,将 E-R图转换为关系模式的过程属于( )。(分数:2.00)A.需求分析阶段B.逻辑设计阶段 C.概念设计阶段D.物理设计阶段解析:解析 数据库设计阶段主要包括需求分析、概念设计
- 1.请仔细阅读文档,确保文档完整性,对于不预览、不比对内容而直接下载带来的问题本站不予受理。
- 2.下载的文档,不会出现我们的网址水印。
- 3、该文档所得收入(下载+内容+预览)归上传者、原创作者;如果您是本文档原作者,请点此认领!既往收益都归您。
下载文档到电脑,查找使用更方便
5000 积分 0人已下载
下载 | 加入VIP,交流精品资源 |
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 计算机 职业资格 二级 笔试 313 答案 解析 DOC
