【计算机类职业资格】二级C++笔试51及答案解析.doc
《【计算机类职业资格】二级C++笔试51及答案解析.doc》由会员分享,可在线阅读,更多相关《【计算机类职业资格】二级C++笔试51及答案解析.doc(14页珍藏版)》请在麦多课文档分享上搜索。
1、二级 C+笔试 51 及答案解析(总分:86.00,做题时间:90 分钟)一、B选择题/B(总题数:30,分数:60.00)1.有以下程序: #include iostream using namespace std; int s=0; class sample static int n; public: sample (int i) n=i; static void add() s+=n; ; int sample:n=0; int main () sample a(2) ,b(5); sample:add(); coutsend1; return 0; 执行后的输出结果是( )。(分数:2
2、.00)A.2B.5C.7D.32.设有 n 元关系 R 及 m 元关系 S,它们分别有 p、q 个元组,则关系 R 与 S 经笛卡尔积记为 RS,该关系是一个 n+m 元关系,那么其元组个数是( )。(分数:2.00)A.n*mB.n+mC.p+qD.p*q3.以下各特点中,属于算法的基本特征的是( )。(分数:2.00)A.不可行性B.确定性C.拥有部分的情报D.无穷性。4.有以下程序: #includeiostream using namespace std; int main() int a=5, b=4, c=3,d=2; if(abc) coutdend1; else if(c-1
3、=D) =1) coutd+1end1; else coutd+2end1; return O; 执行后的输出结果是( )。(分数:2.00)A.2B.3C.4D.编译时有错,无结果5.有如下程序: #include iostream using namespace std; Class x protected: int a; public: x() a=1; ; class x1 : virtual public x public: x1() a+=1; couta; ; class x2 : virtual public x public: x2() a+=2; couta; ; clas
4、s y : public xl,public x2 public: Y() coutaend1; ; int main () y obj; return 0; 该程序运行后的输出结果是( )。(分数:2.00)A.1B.123C.242D.2446.有如下类的定义。那么空格处的语句是( )。 class MyClass _int x,y; public: MyClass(int x1=0,int y1=0) x=x1; y=y1; static void change() x+=10; y+=10; ;(分数:2.00)A.staticB.constC.privateD.不需要填入内容7.下面
5、是类 MyClass 的定义,对定义中各语句描述正确的是( )。 class MyClass private: int x,y, z; public: void MyClass(int A) x=a; / int f(int a, int B) / x=a; y=b; int f(int a, int b, int c=0) / x=a; y=b; z=c; static void g() x=10; / ;(分数:2.00)A.语句是类 MyClass 的构造函数的定义B.语句和实现类成员函数的重载C.语句实现对类成员变量 x 的更新操作D.语句、和都不正确8.考虑下面的函数原型: void
6、 f(int a,int b=7,char c=); 下面的函数调用中,不合法的是( )。(分数:2.00)A.f(5)B.f(5,8)C.f(6, flag=n-1; while (flagO) k=flag-1; flag=O; for (j=O; j=k; j+) if(LjLj+1) temp=Lj;Lj=Lj+1; Lj+1 =temp; flag=j; void main() int array4=2, 1,3,0; sort (array, 4); for (int i=O; i4; i+) cout arrayi; cout end; 程序执行后的输出结果是( )。(分数:2.
7、00)A.0123B.3210C.2130D.123011.下列不属于软件工程过程的基本活动的是( )。(分数:2.00)A.软件规格说明B.软件开发C.软件确认D.软件需求分析12.下面关于对象概念的描述中错误的是( )。(分数:2.00)A.任何对象都必须有继承性B.对象是属性和方法的封装体C.对象间的通信靠消息传递D.操作是对象的动态属性13.以下程序的执行结果为( )。 #includeiostream.h Class sample int n; public: sample(int i)n=i; operator +() n+; void display() coutnend1; ;
8、 void main() sample obj(5); obj+; objdisplay(); (分数:2.00)A.5B.6C.7D.814.执行完 C+程序中的下列 3 条语句后,c 指向( )。 int a, b,*c = int main ( ) ofstream ofile; char ch; ofile.open (“abc.txt“); cinch; while (ch!=# ) cinch; ofile.put(ch); ofile.close(); return 0; 当从键盘终端连续输入的字符为 a、b、c 和#时,文件abc.txt 中的内容为( )。(分数:2.00)A
9、.程序编译时出错B.abc#C.abcD.#18.有以下程序: #include iostream #include string using namespace std; class base private: char baseName10; public: base ( ) strcpy (baseName, “Base“); virtual char *myName() return baseName; char *className() return baseName; ; class Derived : public base private: char derivedName10
10、; public: Derived() strcpy(derivedName,“Derived“); char *myName() return derivedName; char *className() return derivedName; ; void showPtr(base int main () base bb; Derived dd; showPtr(dd) ; return 0; (分数:2.00)A.DerivedBaseB.BaseBaseC.DerivedDerivedD.BaseDerived19.下列对模板的声明中,正确的是( )。(分数:2.00)A.templa
11、teTB.templateclassT1,T2C.templateclassT1,classT2D.templateclassT1;classT220.软件测试方法中属于静态测试方法的是( )。(分数:2.00)A.黑盒法B.逻辑覆盖C.错误推测D.人工检测21.在顺序表(3,6,8,10,12,15,16,18,21,25,30)中,用二分法查找关键码值 11,所需的关键码比较次数为( )(分数:2.00)A.2B.3C.4D.522.C+语言是以( )语言为基础逐渐发展演变而成的一种程序设计语言。(分数:2.00)A.PascalB.CC.BD.Simula 6723.下列关于类与对象的说
12、法中,不正确的是( )。(分数:2.00)A.对象是类的一个实例B.任何一个对象只能属于一个具体的类C.一个类只能有一个对象D.类与对象的关系和数据类型与变量的关系相似24.数据库设计包括两个方面的设计内容,它们是( )。(分数:2.00)A.概念设计和逻辑设计B.模式设计和内模式设计C.内模式设计和物理设计D.结构特性设计和行为特性设计25.有如下程序: #include iostream using namespace std; class AA public: virtual void f() cout “AA“; ; class BB : public AA public: BB()
13、cout “BB“; ; class CC : public BB public: virtual void f() BB:f(); cout “CC“; ; int main () AA aa,*p; BB bb; CC cc; p= p-f (); return 0; 执行上面的程序将输出( )。(分数:2.00)A.AAB.AABBCCC.BBAABBCCD.BBBBAACC26.下列关于虚函数的描述中,正确的是( )。(分数:2.00)A.如果在重定义函数时使用了保留字 virtual,则该重定义函数仍然是虚函数B.虚函数不得声明为静态函数C.虚函数不得声明为另一个类的友元函数D.派生
14、类必须重新定义基类的虚函数27.设有 a、b、c、d、m、n 均为 int 型变量,且 a=5、b=6、c=7、d=8、m=2、n=2,则逻辑表达式(m=aB) int main() int x; for(int i=1;i=100;i+) x=i; if (+x%2=0) if (+x%3=0) if (+x%7=0) coutx“,“; coutend1; return 0; 执行后输出结果是( )。(分数:2.00)A.39,81B.42,84C.26,68D.28,7030.不能作为函数重载的判断依据的是( )。(分数:2.00)A.constB.返回类型C.参数个数D.参数类型二、B
15、填空题/B(总题数:13,分数:26.00)31.算法的空间复杂度是指U 【1】 /U。(分数:2.00)填空项 1:_32.树 L 中,度为 1、2、3、4、5 和 6 的节点个数为 6、4、3、3、5、1,则 L 中叶子的个数是U 【2】 /U。(分数:2.00)填空项 1:_33.程序设计中最基本、最常用的控制结构是U 【3】 /U。(分数:2.00)填空项 1:_34.软件是程序、数据和U 【4】 /U的集合。(分数:2.00)填空项 1:_35.一个工人可以加工多种零件,每一种零件可以由不同的工人来加工,工人和零件之间为U 【5】 /U的联系。(分数:2.00)填空项 1:_36.写
16、出执行完下列代码段之后指定变量的值: bool x=true ,y=false,z=false; x=x U【8】 /U; int k=0; do s+=d; k+; d=1.0/(k*k+1); while(U 【9】 /U); (b) double s=1.0; for(int k=1;k=10;k+) s+=1.0/(k*(k+1);(分数:2.00)填空项 1:_38.下面语句段的输出结果是U 【10】 /U。 int x=0,y=2,z=3; switch(x) case 0 : switch(y) case 1 : cout*; break; case 2 : cout%; bre
17、ak; case 1 : switch(z) case 1 : cout$; break; case 2 : cout*; break; default : cout#; (分数:2.00)填空项 1:_39.若要把类 FriendClass 定义为类 MyClass 的友元类,则应在类 MyClass 的定义中加入语句U 【11】 /U。(分数:2.00)填空项 1:_40.有如下的类的模板定义: template class T class MyClass private: T number; public: MyClass(T k); ; 其中构造函数 MyClass()用 k 的值初始
18、化数据成员 n。因此在模板类体外,构造函数 MyClass 应定义为U 【12】 /U。(分数:2.00)填空项 1:_41.有以下程序: #include iostream using namespace std; class MyClass public: MyClass(); MyClass(); static int s; void SetValue(int val); ; int MyClass:s=0; MyClass:MyClass() s+; void MyClass:SetValue(int val) s=val; int main() MyClass my3,*p; p=m
19、y; for(int k=0;k3;k+) p-SetValue(k+1); p+; coutMyClass:send1; return 0; 运行后的输出结果是U 【13】 /U。(分数:2.00)填空项 1:_42.有以下程序: #include iostream using namespace std; class Base private: int a,b; public: Base(int x, int y) a=x; b=y; void Show() couta , bend1; ; class Derived : public Base private: int c; publi
20、c: Derived(int x, int y, int z) : Base(x,y),c(z) void Show() coutcend1; ; int main() Base b(50,50),*pb; Derived d(10,20,30); pb= pb-Show(); return 0; 运行后的打印结果为U 【14】 /U(分数:2.00)填空项 1:_43.设文件 temp.txt 已存在,则以下的打印结果是U 【15】 /U #include iostream #include fstream using namespace std; int main() ofstream o
21、utf (“temp.txt“,ios base: :trunC) ; outf“How you doing“; outf.close(); ifstream inf(“temp.txt“); char str20; infstr; inf.close(); coutstr; return 0; (分数:2.00)填空项 1:_二级 C+笔试 51 答案解析(总分:86.00,做题时间:90 分钟)一、B选择题/B(总题数:30,分数:60.00)1.有以下程序: #include iostream using namespace std; int s=0; class sample stat
22、ic int n; public: sample (int i) n=i; static void add() s+=n; ; int sample:n=0; int main () sample a(2) ,b(5); sample:add(); coutsend1; return 0; 执行后的输出结果是( )。(分数:2.00)A.2B.5 C.7D.3解析:解析 程序中定义对象 a(2)时,通过构造函数使静态数据成员 n=2,在定义对象 b(5)时,通过构造函数使静态数据成员 n=5(覆盖了前面 n=2),再执行“sample:add();”使全局变量 s=5。 注意:本题程序中尽管代
- 1.请仔细阅读文档,确保文档完整性,对于不预览、不比对内容而直接下载带来的问题本站不予受理。
- 2.下载的文档,不会出现我们的网址水印。
- 3、该文档所得收入(下载+内容+预览)归上传者、原创作者;如果您是本文档原作者,请点此认领!既往收益都归您。
下载文档到电脑,查找使用更方便
5000 积分 0人已下载
下载 | 加入VIP,交流精品资源 |
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 计算机 职业资格 二级 笔试 51 答案 解析 DOC
