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

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

1、二级 C+笔试-363 及答案解析(总分:100.00,做题时间:90 分钟)一、选择题(总题数:35,分数:70.00)1.有如下程序: #includeiostream using namespace std; class Base public: void output( )coutl; virtual void Print( )coutB; ; class Derived:public Base public: void output( )cout1; void Print( )coutD; ; int main( ) Base*prt=new Derived; prt-output(

2、 ); prt-Print( ); delete prt; return 0; 程序的输出结果是(分数:2.00)A.1BB.1DC.2BD.2D2.冒泡排序在最坏情况下的比较次数是(分数:2.00)A.n(n+1)/2B.nlog2nC.n(n-1)/2D.n/23.下列叙述中,不符合良好程序设计风格要求的是(分数:2.00)A.程序的效率第一,清晰度第二B.程序的可读性好C.程序中要有必要的注释D.输入数据前要有提示信息4.下列是重载乘法运算的函数原型声明,其中错误的是(分数:2.00)A.MyClass operator*(double,double);B.MyClass operato

3、r*(double,MyClass);C.MyClass operator*(MyClass,double);D.MyClass operator*(MyClass,MyClass);5.下列关于运算符重载的叙述中,正确的是(分数:2.00)A.运算符重载为成员函数时,若参数表中无参数,则重载的是一元运算符B.一元运算符只能作为成员函数重载C.二元运算符重载为非成员函数时,参数表中有一个参数D.C+中可以重载所有的运算符6.下列叙述中正确的是(分数:2.00)A.数据库系统是一个独立的系统,不需要操作系统的支持B.数据库技术的根本目的是解决数据的共享问题C.数据库管理系统就是数据库系统D.以上

4、 3 种说法都不对7.软件调试的目的是(分数:2.00)A.发现错误B.改正错误C.改善程序的性能D.验证软件的正确性8.有如下头文件: int f1( ); static int f2( ); class MA public: int f3( ); static int f4( ); ; 在所描述的函数中,具有隐含的 this 指针的是(分数:2.00)A.f1B.f2C.f3D.f49.下列叙述中正确的是(分数:2.00)A.程序执行的效率与数据的存储结构密切相关B.程序执行的效率只取决于程序的控制结构C.程序执行的效率只取决于所处理的数据量D.以上 3 种说法都不对10.如下函数的作用是

5、以双倍行距输出文件: void double_space(ifstream i=3;i+) for(intj=1;j=i;j+) sum+;(分数:2.00)填空项 1:_43.已知有函数 f 的定义如下: int f( ) static int s=0; s+=2: return s; 则在某程序中第二次执行函数调用语句 f( );时,函数 f 的返回值是_。(分数:2.00)填空项 1:_44.已知如下程序的输出结果是 23,请将画线处缺失的部分补充完整。 #includeiostream using namespace std; class MyClass public: void Pr

6、int( )consteout23; ; int main( ) MyClass*P=new MyClass( ); _.Print( ); return 0; (分数:2.00)填空项 1:_45.有如下程序: #includeiostream using namespaee std; class A public: A( )cout“A“; A( )cout“A“; ; class B A a; public: B( )cout“B“; B( )t cout“B“; ; int main( ) B b; return 0; 程序的输出结果是_。(分数:2.00)填空项 1:_46.请在如下

7、程序中的空格处填写正确的语句; #includeiostream using namespaee std; cass Base public: void fun( )cout“Base fun“endl; ; class Derived:public Base public: void fun( ) _/调用基类的函数 fun( ) cout“Derived fun“endl; ;(分数:2.00)填空项 1:_47.已知类 sample 是一个抽象类,其成员函数 display 是无形参、无返回类型的纯虚函数,请完成其声明:sample public: sample( ) ; _ ;(分数:

8、2.00)填空项 1:_48.有以下复数类的声明,请补充完整。 Class complex double real;/实部 double imag;/虚部 public: complex(double x,double y) real=x: imag=y; complex operator+(complex e) /重载加法运算符“+” return complex(_) ;(分数:2.00)填空项 1:_49.请将如下程序补充完整,使得输出结果为:bbaa。 #includeiostream using naluespace std; class A public: _eout“aa“; ;

9、 class B:public A public: B( )eont“bb“; ; int ulain( ) B*P=new B; delete P; return 0; (分数:2.00)填空项 1:_50.请将下列栈类 Stack 补充完整。 class Stack private: int pList100; /int 数组,用于存储占的元素 int top; /栈顶元素(数组下标) public: Stack( ):top(0) void Push(const inti=3;i+) for(intj=1;j=i;j+) sum+;(分数:2.00)填空项 1:_ (正确答案:6)解析:

10、解析 内循环执行次数为 1、2、3 次,故 sum 最后为 6。43.已知有函数 f 的定义如下: int f( ) static int s=0; s+=2: return s; 则在某程序中第二次执行函数调用语句 f( );时,函数 f 的返回值是_。(分数:2.00)填空项 1:_ (正确答案:4)解析:解析 静态数据成员可以为不同的类对象所共享,所以 s 值可以一直保留到所有的同类对象被撤销。故为 4。44.已知如下程序的输出结果是 23,请将画线处缺失的部分补充完整。 #includeiostream using namespace std; class MyClass public

11、: void Print( )consteout23; ; int main( ) MyClass*P=new MyClass( ); _.Print( ); return 0; (分数:2.00)填空项 1:_ (正确答案:(* p))解析:解析 对类的成员的引用,如果是指针用“-”,如果是对象用“.”。45.有如下程序: #includeiostream using namespaee std; class A public: A( )cout“A“; A( )cout“A“; ; class B A a; public: B( )cout“B“; B( )t cout“B“; ; int

12、 main( ) B b; return 0; 程序的输出结果是_。(分数:2.00)填空项 1:_ (正确答案:ABBA)解析:解析 在类中出现对象变量时,在创建本类对象时先调用对象变量的构造函数,然后调用本类的构造函数,在撤销时则相反,先调用本类的析构函数,然后调用对象变量的析构函数。46.请在如下程序中的空格处填写正确的语句; #includeiostream using namespaee std; cass Base public: void fun( )cout“Base fun“endl; ; class Derived:public Base public: void fun(

13、 ) _/调用基类的函数 fun( ) cout“Derived fun“endl; ;(分数:2.00)填空项 1:_ (正确答案:Base:fun( ))解析:解析 在派生类中显式调用基类的成员,一般格式为: 基类名:成员函数名( )47.已知类 sample 是一个抽象类,其成员函数 display 是无形参、无返回类型的纯虚函数,请完成其声明:sample public: sample( ) ; _ ;(分数:2.00)填空项 1:_ (正确答案:virtual void display( )=0;)解析:解析 定义纯虚函数的一般格式为: virtual 函数类型函数名(参数表)=04

14、8.有以下复数类的声明,请补充完整。 Class complex double real;/实部 double imag;/虚部 public: complex(double x,double y) real=x: imag=y; complex operator+(complex e) /重载加法运算符“+” return complex(_) ;(分数:2.00)填空项 1:_ (正确答案:real+c.real,imag+c.imag)解析:解析 在复数类中进行+运算符成员函数重载,是复数的实部和虚部分别相加。49.请将如下程序补充完整,使得输出结果为:bbaa。 #includeios

15、tream using naluespace std; class A public: _eout“aa“; ; class B:public A public: B( )eont“bb“; ; int ulain( ) B*P=new B; delete P; return 0; (分数:2.00)填空项 1:_ (正确答案:A( ))解析:解析 派生类和基类的析构函数调用顺序是先调用派生类的析构函数,然后调用基类的析构函数,打印“bb”说明已经在调用派生类的析构函数,则要继续打印“aa”,显然就只有定义在基类的析构函数中去打印,故答案为A( )。50.请将下列栈类 Stack 补充完整。

16、class Stack private: int pList100; /int 数组,用于存储占的元素 int top; /栈顶元素(数组下标) public: Stack( ):top(0) void Push(const int&item); /新元素 item 压入栈 int Pop(void); /将栈顶元素弹出栈 ; void Stack:Push(const int&item) if(top=99) exit(1); /如果栈满,则程序终止 top+; /栈顶指针增 1 _; int Stack:Pop( ) if(top0) exit(1); /如果栈空,则程序终止 return Plisttop-; (分数:2.00)填空项 1:_ (正确答案:plisttop=item)解析:解析 栈的操作,进栈时,先将栈顶指针向上移动,然后将元素压入到栈中,故这里应填入plisttop=item。

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

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

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