【计算机类职业资格】二级C++笔试68及答案解析.doc

上传人:eveningprove235 文档编号:1324804 上传时间:2019-10-17 格式:DOC 页数:13 大小:70KB
下载 相关 举报
【计算机类职业资格】二级C++笔试68及答案解析.doc_第1页
第1页 / 共13页
【计算机类职业资格】二级C++笔试68及答案解析.doc_第2页
第2页 / 共13页
【计算机类职业资格】二级C++笔试68及答案解析.doc_第3页
第3页 / 共13页
【计算机类职业资格】二级C++笔试68及答案解析.doc_第4页
第4页 / 共13页
【计算机类职业资格】二级C++笔试68及答案解析.doc_第5页
第5页 / 共13页
点击查看更多>>
资源描述

1、二级 C+笔试 68 及答案解析(总分:100.00,做题时间:90 分钟)一、B选择题/B(总题数:35,分数:70.00)1.有如下程序段:int x=3,do x-=2;coutx;while(!(-x);执行这个程序段的输出结果是( )。(分数:2.00)A.1B.30C.1-2D.死循环2.软件开发模型包括( )。 瀑布模型 扇形模型 快速原型法模型 螺旋模型(分数:2.00)A.、B.、C.、D.、3.数据库 DB、数据库系统 DBS、数据库管理系统 DBMS 之间的关系是( )。(分数:2.00)A.DB 包含 DBS 和 DBMSB.DBMS 包含 DB 和 DBSC.DBS

2、包含 DB 和 DBMSD.没有任何关系4.下列数据结构中,按“先进后出”原则组织数据的是( )。(分数:2.00)A.线性链表B.栈C.循环链表D.顺序表5.设树 T 的度为 4,其中度为 1,2,3,4 的结点个数分别为 4,2,1,1,则 T 中的叶子结点数为( )。(分数:2.00)A.5B.6C.7D.86.关于静态数据成员的描述中正确的是( )。(分数:2.00)A.类的静态数据成员不是类的所有对象共享的数据B.类的静态数据成员不能被类的成员函数调用C.类的静态数据成员不能被类的构造函数调用D.类的静态数据成员必须进行初始化7.如果进栈序列为 e1,e2,e3,e4,则可能的出栈序

3、列是( )。(分数:2.00)A.e3, e1, e4, e2B.e2, e4, e3, e1C.e3,e4,e1,e2D.任意顺序8.下面是重载为非成员函数的运算符函数原型,其中错误的是( )。(分数:2.00)A.Fraction operator+ (Fraction,Fractio;B.Fraction opemtor-(Fractio;C.Fractionclass Base public:void fun1() cout “Base/n“; virtual void fun2() cout “Base/n“; ;class Derived: public Base public:v

4、oid fun1() cout “Derived/n“; void fun2() cout “Derived/n“; void f(Base B. fun2(); int main()Derived obj;f(obj);return 0;(分数:2.00)A.Base BaseB.Base DerivedC.Derived BaseD.Derived Derived11.以下程序中函数 scmp 功能是返回形参指针 s1 和 s2 所指字符串中较小字符串的首地址。#includstring. hchar *scmp(char *s1,char *s2) if(strcmp(s1,s2)0)

5、return(s1); else return(s2);main() int i;char string20,str320; for(i=0;i3;i+) gets(stri); strcpy(string,scmp(str0,str1); /库函数 strcpy 对字符串进行复制 strcpy(string,scmp(stfing,str2); puts(string); 若运行时依次输入: abed、abba 和 abc 三个字符串,则输出结果为( )。(分数:2.00)A.abedB.abbaC.abcD.abca12.下列叙述中正确的是( )。(分数:2.00)A.软件测试应该由程序开

6、发者来完成B.程序经调试后一般不需要再测试C.软件维护只包括对程序代码的维护D.以上三种说法都不对13.语句 ofstream f(“DATA. DAT“, ios _base: applios_ lios_ base: binary);的功能是建立流对象 f,并试图打开文件 DATA. DAT 并与之连接,而且( )。(分数:2.00)A.若文件存在,将文件指针定位于文件首,若文件不存在,建立一个新文件B.若文件存在,将其截为空文件;若文件不存在,打开失败C.若文件存在,将文件指针定位于文件尾;若文件不存在,建立一个新文件D.若文件存在,打开失败;若文件在,建立一个新文件14.设有以下程序段

7、:int a5=0),*p,*q;p=a;q=a;则下列选项中,合法的运算是( )。(分数:2.00)A.p+qB.p-qC.p*qD.p%q15.若已知 char str 20;,且有语句 cinstr;,此时输入为“This is a program“,则所得的结果是 str=( )。(分数:2.00)A.This is a programB.ThisC.This isD.This is a16.有以下程序:#include iostreamusing namespace std;class sample private: int n;public: sample() sample(int

8、 m) n=m; sample add(sample s1,sample s2) this-n=s1. n+s2.n; return (*this); void disp() cout“n=“nend1; ;int main() sample s1(10),s2(5),s3; s3.add(s1,s2); s3.disp(); return 0,(分数:2.00)A.n=10B.n=5C.n=20D.n=1517.如果有语句 int a=3,*p=void main()cout100.8989663;comfixed100.8989663;coutscientific100.8989663;的

9、输出结果为( )(分数:2.00)A.100.899 100.898966 1.008990e+002B.100.8989663 100.898966 1.008990e+002C.100.899 100.898966 1.008989e+002D.100.899 100.8989663 1.008989e+00227.下面程序的结果是( )。#includeiostream.hvoid main()char *str;str=“test!“;coutstr5;(分数:2.00)A.程序错误B.!C./0D.为空字符28.模板函数的真正代码是在( )时候产生。(分数:2.00)A.源程序中声明

10、函数时B.源程序中定义函数时C.源程序中调用函数时D.运行执行函数时29.下面关于 C+ 语言变量的叙述错误的是( )。(分数:2.00)A.C+语言中变量分为 auto,static,extern 和 register 四种存储类型B.自动变量和外部变量的作用域为整个程序C.内部静态变量的作用域是定义它的函数D.外部静态变量的作用域是定义它的文件30.定义如下枚举类型;enum Monday, Tuesday, Wednesday, Thrusday, Friday=2);,则下列语句正确的是( )。(分数:2.00)A.表达式 Wednesday=Friday 的值是 trueB.Day

11、day;day=3C.Day day;day=Monday+3D.Day day;day=Tuesday+1031.下面程序的输出结果为( )。#includeiostream.hclass CStaticpublic:CStatic() val+;static int val;int CStatic:val=0;void main()CStatic cs1;coutcs1.val “;CStatic cs2;CStatic cs3, cs4;coutcs2. valend1;(分数:2.00)A.14B.24C.34D.5432.有如下类定义:class Foo public:Foo(int

12、 v): value(v) / Foo() / private:Foo() ) / int value =0; / ;其中存在语法错误的行是( )(分数:2.00)A.B.C.D.33.磁盘文件操作中,打开磁盘文件的访问模式常量时,( )是以追加方式打开文件的。(分数:2.00)A.inB.outC.appD.ate34.下列的各类函数中,( )不是类的成员函数。(分数:2.00)A.构造函数B.析构函数C.发元函数D.拷贝初始化构造函数35.用树形结构来表示实体之间联系的模型称为( )。(分数:2.00)A.关系模型B.层次模型C.网状模型D.数据模型二、B填空题/B(总题数:15,分数:3

13、0.00)36.问题处理方案的正确而完整的描述称为U 【1】 /U。(分数:2.00)填空项 1:_37.软件需求规格说明书应具有完整性、无歧义性、正确性、可验证性、可修改性等特性,其中最重要的是U 【2】 /U。(分数:2.00)填空项 1:_38.在结构化分析方法中,用于描述系统中所用到的全部数据和文件的文档称为U 【3】 /U。(分数:2.00)填空项 1:_39.利用继承能够实现U 【4】 /U。这种实现缩短了程序的开发时间,促使开发人员复用已经测试和调试好的高质量软件。(分数:2.00)填空项 1:_40.U【5】 /U是精确定义的一系列规则,它指出怎样从给定的输入信息经过有限步骤产

14、生所求的输出信息。(分数:2.00)填空项 1:_41.若 a=12,b=14,c=0,则表达式(y=(ab)?a:b)c)?y:c 的值为U 【6】 /U。(分数:2.00)填空项 1:_42.如果表达式-x 中的“-”是重载的类运算符,采用运算符函数调用格式,及表达式还可以表示为U【7】 /U。(分数:2.00)填空项 1:_43.若从键盘输入 70,则以下程序输出的结果是U 【8】 /U。 #includeiostream.h void main() int a; cina; if(a50) couta; if(a40) couta; if(a30) couta; (分数:2.00)填空

15、项 1:_44.有如下的程序: #includeiostream #includefstream using namespace std; int main() char s25=“Programming language“; ofstream f1(DATA.TXT“); f1“C+ Programming“; f1.close(); ifstream f2 (“DATA.TXT“); if(f2.good()f2s; f2. close(); couts; return 0; 执行上面的程序交输出U 【9】 /U。(分数:2.00)填空项 1:_45.如果表达式 x=y*z 中的“”是作为

16、成员函数重的运算符,采用运算符函数调用格式,该表达式还可以表示为U 【10】 /U。(分数:2.00)填空项 1:_46.在 C+语言中每个类都有一个U 【11】 /U指针,该指针指向正在调用成员函数的对象。(分数:2.00)填空项 1:_47.若以非成员函数形式,为类 Bounce 重载“!”运算符,其操作结果为一 bool 型数据,则该运算符重载函数的原型是U 【12】 /U。(分数:2.00)填空项 1:_48.如果不使用多态机制,那么通过基类的指针虽然可以指向派生类对象,但是只能访问从基类继承的成员。下列程序没有使用多态机制,其输出结果是U 【13】 /U。 #include iost

17、ream using namespace std; class Base public: void print () ctout B; ; class Derived; public Base public: void print () cout D; ; int main() Derived* pd= new Derived(); Base* pb = pd; pb-print(); pd-print(); delete pd; return (); (分数:2.00)填空项 1:_49.下面程序的输出结果是U 【14】 /U。 #define MIN(a,b) (a)(b)?a:b) #i

18、nclude iostream.h void main() int x= 3, y=5; cout MIN(x,y)end1; (分数:2.00)填空项 1:_50.下列程序的输出结果是U 【15】 /U。 #include iostream using namespace std; template typename T T total(T* data) Ts=0; while(*data) s+=*data+; return s; int main() int x=2,4,6,8,0,12,14,16,18; couttotal(x)end1; return 0; (分数:2.00)填空项

19、 1:_二级 C+笔试 68 答案解析(总分:100.00,做题时间:90 分钟)一、B选择题/B(总题数:35,分数:70.00)1.有如下程序段:int x=3,do x-=2;coutx;while(!(-x);执行这个程序段的输出结果是( )。(分数:2.00)A.1B.30C.1-2 D.死循环解析:2.软件开发模型包括( )。 瀑布模型 扇形模型 快速原型法模型 螺旋模型(分数:2.00)A.、B.、C.、 D.、解析:3.数据库 DB、数据库系统 DBS、数据库管理系统 DBMS 之间的关系是( )。(分数:2.00)A.DB 包含 DBS 和 DBMSB.DBMS 包含 DB

20、和 DBSC.DBS 包含 DB 和 DBMS D.没有任何关系解析:4.下列数据结构中,按“先进后出”原则组织数据的是( )。(分数:2.00)A.线性链表B.栈 C.循环链表D.顺序表解析:5.设树 T 的度为 4,其中度为 1,2,3,4 的结点个数分别为 4,2,1,1,则 T 中的叶子结点数为( )。(分数:2.00)A.5B.6C.7D.8 解析:6.关于静态数据成员的描述中正确的是( )。(分数:2.00)A.类的静态数据成员不是类的所有对象共享的数据B.类的静态数据成员不能被类的成员函数调用C.类的静态数据成员不能被类的构造函数调用D.类的静态数据成员必须进行初始化 解析:7.

21、如果进栈序列为 e1,e2,e3,e4,则可能的出栈序列是( )。(分数:2.00)A.e3, e1, e4, e2B.e2, e4, e3, e1 C.e3,e4,e1,e2D.任意顺序解析:8.下面是重载为非成员函数的运算符函数原型,其中错误的是( )。(分数:2.00)A.Fraction operator+ (Fraction,Fractio;B.Fraction opemtor-(Fractio;C.Fractionclass Base public:void fun1() cout “Base/n“; virtual void fun2() cout “Base/n“; ;clas

22、s Derived: public Base public:void fun1() cout “Derived/n“; void fun2() cout “Derived/n“; void f(Base B. fun2(); int main()Derived obj;f(obj);return 0;(分数:2.00)A.Base BaseB.Base Derived C.Derived BaseD.Derived Derived解析:11.以下程序中函数 scmp 功能是返回形参指针 s1 和 s2 所指字符串中较小字符串的首地址。#includstring. hchar *scmp(cha

23、r *s1,char *s2) if(strcmp(s1,s2)0) return(s1); else return(s2);main() int i;char string20,str320; for(i=0;i3;i+) gets(stri); strcpy(string,scmp(str0,str1); /库函数 strcpy 对字符串进行复制 strcpy(string,scmp(stfing,str2); puts(string); 若运行时依次输入: abed、abba 和 abc 三个字符串,则输出结果为( )。(分数:2.00)A.abedB.abba C.abcD.abca解

24、析:12.下列叙述中正确的是( )。(分数:2.00)A.软件测试应该由程序开发者来完成B.程序经调试后一般不需要再测试C.软件维护只包括对程序代码的维护D.以上三种说法都不对 解析:13.语句 ofstream f(“DATA. DAT“, ios _base: applios_ lios_ base: binary);的功能是建立流对象 f,并试图打开文件 DATA. DAT 并与之连接,而且( )。(分数:2.00)A.若文件存在,将文件指针定位于文件首,若文件不存在,建立一个新文件B.若文件存在,将其截为空文件;若文件不存在,打开失败C.若文件存在,将文件指针定位于文件尾;若文件不存在

25、,建立一个新文件 D.若文件存在,打开失败;若文件在,建立一个新文件解析:14.设有以下程序段:int a5=0),*p,*q;p=a;q=a;则下列选项中,合法的运算是( )。(分数:2.00)A.p+qB.p-q C.p*qD.p%q解析:15.若已知 char str 20;,且有语句 cinstr;,此时输入为“This is a program“,则所得的结果是 str=( )。(分数:2.00)A.This is a programB.This C.This isD.This is a解析:16.有以下程序:#include iostreamusing namespace std;

26、class sample private: int n;public: sample() sample(int m) n=m; sample add(sample s1,sample s2) this-n=s1. n+s2.n; return (*this); void disp() cout“n=“nend1; ;int main() sample s1(10),s2(5),s3; s3.add(s1,s2); s3.disp(); return 0,(分数:2.00)A.n=10B.n=5C.n=20D.n=15 解析:17.如果有语句 int a=3,*p=void main()cout

27、100.8989663;comfixed100.8989663;coutscientific100.8989663;的输出结果为( )(分数:2.00)A.100.899 100.898966 1.008990e+002 B.100.8989663 100.898966 1.008990e+002C.100.899 100.898966 1.008989e+002D.100.899 100.8989663 1.008989e+002解析:27.下面程序的结果是( )。#includeiostream.hvoid main()char *str;str=“test!“;coutstr5;(分数:

28、2.00)A.程序错误B.!C./0D.为空字符 解析:28.模板函数的真正代码是在( )时候产生。(分数:2.00)A.源程序中声明函数时B.源程序中定义函数时C.源程序中调用函数时 D.运行执行函数时解析:29.下面关于 C+ 语言变量的叙述错误的是( )。(分数:2.00)A.C+语言中变量分为 auto,static,extern 和 register 四种存储类型B.自动变量和外部变量的作用域为整个程序 C.内部静态变量的作用域是定义它的函数D.外部静态变量的作用域是定义它的文件解析:30.定义如下枚举类型;enum Monday, Tuesday, Wednesday, Thrus

29、day, Friday=2);,则下列语句正确的是( )。(分数:2.00)A.表达式 Wednesday=Friday 的值是 true B.Day day;day=3C.Day day;day=Monday+3D.Day day;day=Tuesday+10解析:31.下面程序的输出结果为( )。#includeiostream.hclass CStaticpublic:CStatic() val+;static int val;int CStatic:val=0;void main()CStatic cs1;coutcs1.val “;CStatic cs2;CStatic cs3, c

30、s4;coutcs2. valend1;(分数:2.00)A.14 B.24C.34D.54解析:32.有如下类定义:class Foo public:Foo(int v): value(v) / Foo() / private:Foo() ) / int value =0; / ;其中存在语法错误的行是( )(分数:2.00)A.B.C.D. 解析:33.磁盘文件操作中,打开磁盘文件的访问模式常量时,( )是以追加方式打开文件的。(分数:2.00)A.inB.outC.app D.ate解析:34.下列的各类函数中,( )不是类的成员函数。(分数:2.00)A.构造函数B.析构函数C.发元函

31、数 D.拷贝初始化构造函数解析:35.用树形结构来表示实体之间联系的模型称为( )。(分数:2.00)A.关系模型B.层次模型 C.网状模型D.数据模型解析:二、B填空题/B(总题数:15,分数:30.00)36.问题处理方案的正确而完整的描述称为U 【1】 /U。(分数:2.00)填空项 1:_ (正确答案:算法(或程序、或流程图))解析:37.软件需求规格说明书应具有完整性、无歧义性、正确性、可验证性、可修改性等特性,其中最重要的是U 【2】 /U。(分数:2.00)填空项 1:_ (正确答案:无歧义性)解析:38.在结构化分析方法中,用于描述系统中所用到的全部数据和文件的文档称为U 【3

32、】 /U。(分数:2.00)填空项 1:_ (正确答案:数据字典)解析:39.利用继承能够实现U 【4】 /U。这种实现缩短了程序的开发时间,促使开发人员复用已经测试和调试好的高质量软件。(分数:2.00)填空项 1:_ (正确答案:软件复用)解析:40.U【5】 /U是精确定义的一系列规则,它指出怎样从给定的输入信息经过有限步骤产生所求的输出信息。(分数:2.00)填空项 1:_ (正确答案:算法)解析:41.若 a=12,b=14,c=0,则表达式(y=(ab)?a:b)c)?y:c 的值为U 【6】 /U。(分数:2.00)填空项 1:_ (正确答案:14)解析:42.如果表达式-x 中

33、的“-”是重载的类运算符,采用运算符函数调用格式,及表达式还可以表示为U【7】 /U。(分数:2.00)填空项 1:_ (正确答案:x. opelator-())解析:43.若从键盘输入 70,则以下程序输出的结果是U 【8】 /U。 #includeiostream.h void main() int a; cina; if(a50) couta; if(a40) couta; if(a30) couta; (分数:2.00)填空项 1:_ (正确答案:707070)解析:44.有如下的程序: #includeiostream #includefstream using namespace

34、std; int main() char s25=“Programming language“; ofstream f1(DATA.TXT“); f1“C+ Programming“; f1.close(); ifstream f2 (“DATA.TXT“); if(f2.good()f2s; f2. close(); couts; return 0; 执行上面的程序交输出U 【9】 /U。(分数:2.00)填空项 1:_ (正确答案:C+)解析:45.如果表达式 x=y*z 中的“”是作为成员函数重的运算符,采用运算符函数调用格式,该表达式还可以表示为U 【10】 /U。(分数:2.00)填

35、空项 1:_ (正确答案:x=y. operator*(z))解析:46.在 C+语言中每个类都有一个U 【11】 /U指针,该指针指向正在调用成员函数的对象。(分数:2.00)填空项 1:_ (正确答案:this)解析:47.若以非成员函数形式,为类 Bounce 重载“!”运算符,其操作结果为一 bool 型数据,则该运算符重载函数的原型是U 【12】 /U。(分数:2.00)填空项 1:_ (正确答案:bool operator!(Bounce);)解析:48.如果不使用多态机制,那么通过基类的指针虽然可以指向派生类对象,但是只能访问从基类继承的成员。下列程序没有使用多态机制,其输出结果

36、是U 【13】 /U。 #include iostream using namespace std; class Base public: void print () ctout B; ; class Derived; public Base public: void print () cout D; ; int main() Derived* pd= new Derived(); Base* pb = pd; pb-print(); pd-print(); delete pd; return (); (分数:2.00)填空项 1:_ (正确答案:BD)解析:49.下面程序的输出结果是U 【1

37、4】 /U。 #define MIN(a,b) (a)(b)?a:b) #include iostream.h void main() int x= 3, y=5; cout MIN(x,y)end1; (分数:2.00)填空项 1:_ (正确答案:3)解析:50.下列程序的输出结果是U 【15】 /U。 #include iostream using namespace std; template typename T T total(T* data) Ts=0; while(*data) s+=*data+; return s; int main() int x=2,4,6,8,0,12,14,16,18; couttotal(x)end1; return 0; (分数:2.00)填空项 1:_ (正确答案:20)解析:

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 考试资料 > 职业资格

copyright@ 2008-2019 麦多课文库(www.mydoc123.com)网站版权所有
备案/许可证编号:苏ICP备17064731号-1