【学历类职业资格】C++程序设计真题2013年01月及答案解析.doc
《【学历类职业资格】C++程序设计真题2013年01月及答案解析.doc》由会员分享,可在线阅读,更多相关《【学历类职业资格】C++程序设计真题2013年01月及答案解析.doc(21页珍藏版)》请在麦多课文档分享上搜索。
1、C+程序设计真题 2013 年 01 月及答案解析(总分:100.00,做题时间:90 分钟)一、单项选择题(总题数:20,分数:20.00)1.下列不属于 C+关键字的是_(分数:1.00)A.externB.gotoC.freeD.default2.C+中定义标准输入/输出的库为_(分数:1.00)A.stdioB.mathC.iostreamD.stdlib3.My 是一个类,则执行语句 My a3,*p2之后,自动调用构造函数次数为_(分数:1.00)A.2B.3C.4D.54.下列语句错误的是_(分数:1.00)A.int val(20);B.extern int val(20);C
2、.const int val;D.extern const int val;5.下列说法中,有关构造函数正确的是_(分数:1.00)A.任何一类必定有构造函数B.可定义没有构造函数的类C.构造函数不能重载D.任何一类必定有默认的构造函数6.下面关于类和对象说法不正确的是_(分数:1.00)A.类由数据与函数组成B.一个对象必属于某个类C.对象是类的实例D.一个类的对象只有一个7.下面选项中不是类成员函数的是_(分数:1.00)A.构造函数B.析构函数C.友元函数D.静态函数8.在 C+中类之间的继承关系具有_(分数:1.00)A.自反性B.对称性C.传递性D.反对称性9.C+中类的成员默认为_
3、(分数:1.00)A.publicB.privateC.protectedD.stalic10.C+中要实现动态联编,调用虚函数时必须使用_(分数:1.00)A.基类指针B.类名C.派生类指针D.对象名11.下面对析构函数的正确描述是_(分数:1.00)A.系统不能提供默认的析构函数B.析构函数必须由用户定义C.析构函数没有参数D.析构函数可以设置默认参数12.下面的二维数定义正确的是_(分数:1.00)A.int ary5;B.int ary5=0,1,2;C.int ary5;D.int ary5,5;13.以下说法中正确的是_(分数:1.00)A.C+程序总是从第一个定义的函数开始执行B
4、.C+程序总是从 main 函数开始执行C.C+中函数必须有返回值D.C+中函数名必须唯一14.对 C+中主函数描述正确的是_(分数:1.00)A.名称为 main,可为多个B.名称不限,可为多个C.名称为 main,必须有且只能有一个D.名称不限,必须有且只能有一个15.下面声明纯虚函数语句正确的是_(分数:1.00)A.void fun()=0;B.virtual void fun()=0;C.virtual void fun();D.vinual void fun();16.对于复制初始化构造函数和赋值操作的关系,正确的描述是_(分数:1.00)A.复制初始化构造函数和赋值操作是完全一样
5、的操作B.进行赋值操作时,会调用类的构造函数C.当调用复制初始化构造函数时,类的对象正在被建立并被初始化D.复制初始化构造函数和赋值操作不能在同一个类中被同时定义17.使用重载函数的目的是_(分数:1.00)A.共享函数数据B.减少代码量C.优化运行效率D.提高可读性18.C+语言对 C 语言做了很多改进,C+语言相对于 C 语言的最根本的变化是_(分数:1.00)A.增加了一些新的运算符B.允许函数重载,并允许设置默认参数C.规定函数说明符必须用原型D.引进了类和对象的概念19.假定有“char*p=“Hello“;”,若要输出这个字符串的地址值正确的写法为_(分数:1.00)A.cout*
6、p;B.coutp;C.coutD.cout(void*)p;20.对类成员访问权限的控制,是通过设置成员的访问控制属性实现的,下列不是访问控制属性的是_(分数:1.00)A.公有类型B.私有类型C.保护类型D.友元类型二、填空题(总题数:20,分数:20.00)21.C+程序的编译是以 1 为单位进行的。 (分数:1.00)22.C+语言支持的两种多态性分别是编译时的多态性和 1 的多态性。 (分数:1.00)23.重载的运算符保持其原有的操作符个数、 1 和结合性不变。 (分数:1.00)24.在 C+中,函数的参数有两种传递方式,它们分别是值传递和 1。 (分数:1.00)25.含有 1
7、 的类称为抽象类。 (分数:1.00)26.C+程序运行时的内存空间可以分成全局数据区、堆区、栈区和 1。 (分数:1.00)27.对于无返回值函数,定义函数时要用 1 标识修饰函数类型。 (分数:1.00)28.定义重载函数必须在参数的个数或参数的 1 上与其他同名函数不同。 (分数:1.00)29.复制构造函数是在用一个对象初始化另一个对象时被调用,系统默认的复制构造函数的工作方法是 1。 (分数:1.00)30.以面向对象方法构造的系统,其基本单位是 1。 (分数:1.00)31.复制构造函数使用 1 作为参数初始化创建中的对象。 (分数:1.00)32.当一个成员函数被调用时,该成员函
8、数的 1 指向调用它的对象。 (分数:1.00)33.类可将实现细节隐藏起来,这种机制称为 1。 (分数:1.00)34.在面向对象的程序设计中,通过封装实现数据隐藏;通过 1 实现代码的复用。 (分数:1.00)35.在公有继承中,基类数据成员在派生类中的访问权限 1。 (分数:1.00)36.复杂对象可以由简单对象构成,这种现象称为 1。 (分数:1.00)37.如有“char*p=“Hello“;”,则语句“cout*(p+1);”输出值是 1。 (分数:1.00)38.基类和派生类的关系称为 1。 (分数:1.00)39.在类的定义中,说明为 protected 的数据成员称为保护成员
9、。保护数据成员具有双重作用:对于其派生类而言,是公有的;而对于其外部的程序而言,是 1。 (分数:1.00)40.假定 x=10,则表达式 x=10?20:30 的值为 1。 (分数:1.00)三、改错题(总题数:5,分数:10.00)41.#includeiostrearn.h class point private:float x,y; public:point(float a,float b)x=a;y=b; void f()x=0;y=0; void getx()coutxendl; void gety()coutyendl; ; main() point a(3.5); a.getx
10、() (分数:2.00)42.#includeiostream.h main() int x=7; const int*p= *p=99 cout*pendl; (分数:2.00)43.#includeiostream.h class test private:int x;y; public:void f(int a,int b)x=a;y=b; int max()return(xy)?x:y; ; main() test a; a.f(1,3); couta.max()endl; (分数:2.00)44.#includeiostream.h class test private:int x;
11、 public:test(int a)x=a; void set(int a)x=a; void get()coutxendl; ; class testl:public test private:int x; public:testl(int a)x=a; void set(int a)x=a; void get()coutxendl; ; (分数:2.00)45.#includeiostream.h class f private:int x,y; public:void fl(int a,int b)x=a;y=b; void print()coutx“xendl; ; main() f
12、 a; float x=1.5,y=2.0; a.fl(x,y); a.print(); (分数:2.00)四、完成程序题(总题数:5,分数:20.00)46.在下面程序横线处填上缺少的部分。源程序如下: #includeiostream using namespace std; class base int a,b; public: base(int x,int y)a=x;b=y; void show(_) coutp.a“,“p.bendl; _ void main() base b(78,87); b.show(b); (分数:4.00)_47.在下面横线处填上缺少的部分。源程序如下:
13、 #includeiostream #includefstream using namespaee std; void main() _myf(“ab.txt“);/定义输出流文件,并初始化 _“This ia a TXT file“;/向文件输入字符串 myf.close(); (分数:4.00)_48.在下面程序中的画线处填上适当的程序,使程序的输出结果如下: 67,90 源程序如下: #includeiostream using namespaee std; class base private: int x,y; public: void initxy(int a,int b)x=a;
14、y=b; void show(base*p); ; inline void base:show(_) coutp-x“,“p-yendl; void print(base*p) p-show(p); void main() base a; a.initxy(67,90); print(_); (分数:4.00)_49.下面程序给出了一个从普通的基类派生出一个模板类的方法,在画线处填上正确的部分。 #includeiostream using namespace std; class Base public: Base(int a)x=a; int Getx()returnx; void sho
15、wb()coutxendl; private: int x; ; templateclass T class derived:public Base public: derived(T a,int b):_ y=a; T Gety()return y; void showd()couty“ “Getx()endl; private: _ ; void main() Base A(458); A.showb(); derivedchar * B“It is“,1357); B.showd(); (分数:4.00)_50.下面程序的运行结果如下: 20,22 60,22 在下面程序横线处填上缺少的
16、部分,源程序如下: #includeiostream using namespace std; class base private: const int a; static const int b; public: base(int); void Show(); ; _=22; _:a(i)/初始化 void base:Show() couta“,“bendl; void main() base al(20),a2(60); al.Show(); a2.Show(); (分数:4.00)_五、程序分析题(总题数:4,分数:20.00)51.给出下面程序的输出结果。 #includeiostr
17、eam using namespace std; class base int x; public: void setx(int a)x=a; int getx()return x; ; void main() int*p; base a; a.setx(15); p=new int(a.getx(); cout* p; (分数:5.00)_52.给出下列程序的输出结果。 #includeiostream #includecomplex #includestring using namespace std; void main() complexintfsl(5,6); complexfloa
18、tfs2(7.5,8.5); string strl(“real is:“); string str2(“image is:“); coutstrlfsl.real()“,“str2fsl.imag()endl; coutstrlfs2.real()“,“str2fs2.imag()endl; (分数:5.00)_53.给出下面程序的输出结果。 #includeiostream using namespace std; class base private: int x; public: void setx(int a)x=a; int getx()return x; ; void main(
19、) base a,b; a.setx(89); b=a; couta.getx()endl; coutb.getx()endl; (分数:5.00)_54.给出下面程序的输出结果。 #includeiostream using namespace std; void main() int a=10,20,30,40,* pa=a; int * pb+; cout*paendl; (分数:5.00)_六、程序设计题(总题数:1,分数:10.00)55.在字符串类 string 中实现一个判断函数,该函数功能是统计某一字符串类对象(仅由单词和空格组成)有多少个单词,同时保存所有单词在字符串中的起始
20、地址(设该字符串不超过 100 个单词) #includeiostream.h #includestring class str string s;int n,a100,j,1; public:str(stringn=0;j=0;l=0; .test(.); int*geta()return a; ; 请写出 test 函数的过程(如果需要形式参数,请给出形参类型和数量以及返回值类型) (分数:10.00)_C+程序设计真题 2013 年 01 月答案解析(总分:100.00,做题时间:90 分钟)一、单项选择题(总题数:20,分数:20.00)1.下列不属于 C+关键字的是_(分数:1.00
21、)A.externB.gotoC.free D.default解析:考点 认识 C+对象 解析 C+关键字包括以下 63 个:asm do if return typedef auto double inline short typeid、bool dynamic_cast int signed typename break else long sizeof union、case enum mutable static unsigned catch explicit namespace static_cast using、char export new struct virtual class
- 1.请仔细阅读文档,确保文档完整性,对于不预览、不比对内容而直接下载带来的问题本站不予受理。
- 2.下载的文档,不会出现我们的网址水印。
- 3、该文档所得收入(下载+内容+预览)归上传者、原创作者;如果您是本文档原作者,请点此认领!既往收益都归您。
下载文档到电脑,查找使用更方便
5000 积分 0人已下载
下载 | 加入VIP,交流精品资源 |
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 学历 职业资格 程序设计 2013 01 答案 解析 DOC
