【学历类职业资格】C++程序设计自考题模拟8及答案解析.doc
《【学历类职业资格】C++程序设计自考题模拟8及答案解析.doc》由会员分享,可在线阅读,更多相关《【学历类职业资格】C++程序设计自考题模拟8及答案解析.doc(20页珍藏版)》请在麦多课文档分享上搜索。
1、C+程序设计自考题模拟 8 及答案解析(总分:100.00,做题时间:90 分钟)一、第部分 选择题(总题数:20,分数:20.00)1.C+语言是以_语言为基础逐渐发展演变而成的一种程序设计语言。(分数:1.00)A.PascalBCCBD.Simula 672.设 int x=56; int r=x; 若 cout 显示 0012FFTA,则 cout 输出值为_(分数:1.00)A.56B.0012FF7AC.0012FF7BD.未知3.存在定义 int a10, x, *pa; ,若 pa=B.x=*(a+1);C.x=*(pa+1);D.x=a1;4.C+语言中所有在函数中定义的变量
2、,连同形式参数,都属于_(分数:1.00)A.全局变量B.局部变量C.静态变量D.函数5.在 C+类体系中,不能被派生类继承的有_(分数:1.00)A.常成员函数B.静态成员函数C.虚函数D.析构函数6.下列选项中不是 C+语言关键字的是_(分数:1.00)A.typedefB.mycaseC.typeidD.typename7.下列对模板的声明中正确的是_(分数:1.00)A.templateTB.templateT1, class T2C.templateclass T1, class T2D.templateclass T1; class T28.下列关于构造函数的描述中,错误的是_(分
3、数:1.00)A.构造函数可以设置默认参数B.构造函数在说明类对象时自动执行C.构造函数可以对静态数据成员进行初始化D.构造函数可以重载9.下列对静态数据成员的描述中,正确的是_(分数:1.00)A.静态数据成员是类的所有对象共享的数据B.静态数据成员应在类体中初始化C.类的不同对象有不同的静态数据成员值D.静态数据成员不能被友元函数访问10.已知 print()函数是一个类的常成员函数,它无返回值,下列表示中正确的项是_(分数:1.00)A.void print()constB.const void print()C.void const print()D.void print(const)
4、11.下列对派生类的描述中,错误的是_(分数:1.00)A.一个派生类可以作为另一个派生类的基类B.派生类至少有一个基类C.派生类的默认继承方式是 privateD.派生类只继承了基类的公有成员和保护成员12.虚函数必须是类的_(分数:1.00)A.成员函数B.友元函数C.构造函数D.析构函数13.关于纯虚函数,下列表述中正确的是_(分数:1.00)A.纯虚函数是没有给出实现版本(即无函数体定义)的虚函数B.纯虚函数的声明总是以“=0; ”结束C.派生类必须实现基类的纯虚函数D.含有纯虚函数的类不可能是派生类14.关于抽象类,下列表述中正确的是_(分数:1.00)A.抽象类的成员函数中至少有一
5、个是没有实现的函数(即无函数体定义的函数)B.派生类必须实现作为基类的抽象类中的纯虚函数C.派生类不可能成为抽象类D.抽象类不能用来定义对象15.保证编译器正确调用成员函数的规则是_(分数:1.00)A.赋值兼容B.继承C.作用域D.支配16.下列关于向量的叙述,不正确的是_(分数:1.00)A.向量的长度可变B.向量有返回无需再次分配内存就能容纳的对象个数的成员函数 capacity()C.如果数量已满,当增加一个元素时,向量成员函数 capacity()的长度自动增加D.如果数量已满,当需要增加一个元素时,capacity()的长度每次自动增加一个17.下列各项不是 C+中的标准设备名的是
6、_(分数:1.00)A.stdinB.coutC.clogD.cerr18.在下列成对的表达式中,运算符“/”的意义相同的一对是_(分数:1.00)A.8/3 和 8.0/3.0B.8/3.0 和 8/3C.8.0/3 和 8/3D.8.0/3.0 和 8.0/319.在重载一个运算符函数时,其参数表中没有任何参数,这说明该运算符是_(分数:1.00)A.一元非成员运算符B.一元成员运算符C.二元非成员运算符D.二元成员运算符20.关于类模板,下列表述中不正确的是_(分数:1.00)A.类模板中声明的类称为模板类B.类模板只能有虚拟类型参数C.类模板本身在编译中不会生成任何代码D.类模板的成员
7、函数都是模板函数二、第部分 非选择题(总题数:20,分数:20.00)21.cout 是 C+中的标准输出流对象,它通常代表 1。 (分数:1.00)22.C+中的输入/输出是以字节 1 的形式实现的。 (分数:1.00)23.构造函数是和 1 同名的函数。 (分数:1.00)24.对象的成员函数可以通过 1 指针访问对象自身。 (分数:1.00)25.如果类的成员对象不提供成员初始化值,则调用该对象的 1。 (分数:1.00)26.若要把 FriendClass 定义为类 Myclass 的友元类,则应在类 MyClass 的定义中加入语句 1。 (分数:1.00)27.如果类 Derive
8、d 继承了类 Base,则类 Derived 称为 1 类,类 Base 称为 2 类。 (分数:1.00)28.对虚函数的调用有两种方式:多态调用和 1。 (分数:1.00)29.在 C+中,编译时的多态性是通过 1 和模板体现的。 (分数:1.00)30.在虚函数原型的语句结束符“;”之前加上 1,即将该函数声明为纯虚函数。 (分数:1.00)31.在派生类中,对类对象成员、基类成员和非类对象成员的初始化顺序是 1。 (分数:1.00)32.假定用户没有给一个名字为 Sample 的类定义构造函数,则系统为其隐含定义的构造函数为 1。 (分数:1.00)33.在 C+流类库中,根基类为 1
9、。 (分数:1.00)34.如果表达式-x 中的“-”是重载的类成员函数运算符,采用运算符函数调用格式时,该表达式应表示为 1。 (分数:1.00)35.在派生类中重新定义虚函数时必须在 1 和参数上和基类保持一致。 (分数:1.00)36.文件流类的 1 成员函数的功能是打开一个文件。 (分数:1.00)37.返回向量中的最后一个对象的成员函数是 1。 (分数:1.00)38.返回当前容器中已经存放的对象个数的成员函数是 1。 (分数:1.00)39. 1 可以视为是单一继承的扩展。 (分数:1.00)40.如果一个类中定义了成员对象,则该类的对象和成员对象先被初始化的是 1。 (分数:1.
10、00)三、改错题(总题数:5,分数:20.00)41.#includeiostream.h class f private: float x, y; public: f(float a, float b)x=a; y=b; float max()return(xy)?x:y; /求最大值 ; void main() fa(1.5,3.5); couta.max()endl; (分数:4.00)_42.#includeiostream.h class f private: int x, y; public: void fl(int a, int b)x=a; y=b; void print()c
11、outxyendl; ; void main() fa; a.fl(1.5,1.8); a.print(); (分数:4.00)_43.#include iostream.h class A int i; public: virtual void fun() =0; A(int a) i=a; ; class B:public A int j; public: void fun () cout “B:fun()/n“ ; B(int m, int n =0):j(n) ; void main() A *pa; B b(7); pa = (分数:4.00)_44.#include iostrea
12、m.h class X public: int x; public: X( int x) cout this - x = x endl; X( X cout t.x endl; void fun(X); ; void fun(X t) cout t.x endl; void main () fun(X(10); (分数:4.00)_45.#include iostream using namespace std; class Date; class Time public: Time ( int h, int m, int s) hour = h; minute = m; sec = s; v
13、oid show(Date private: int hour, minute, sec; ; class Date public: Date( int m, int d, int y) month = m; day = d; year = y; void Time:show( Date private: int month, day, year; ; void Time: show( Date cout hour “:“ minute “:“ sec endl; void main () Time t1 (9,23,50); Date d1 (12,20,2010); t1.show( d1
14、 ); (分数:4.00)_四、完成程序题(总题数:5,分数:20.00)46.在下面横线处填上正确的内容,完成类的定义。 class Base int x; static const int b; public: Base( int, int); const int ; _ b=15; Base:Base(int i, int j): _ (分数:4.00)_47.在下列程序的横线处填上适当的语句,使输出为:0,2,10。 #include iostream.h #include math.h class Magic double x; public: Magic (double d = 0
15、.00):x ( fabs (d) ) Magic operator + (_) return Magic( sqrt( x * x + c.x * c.x) ); _ operator ( ostream return stream; ; void main() Magic ma; cout ma “, “ Magic (2) “, “ ma + Magic ( - 6) + Magic ( - 8 ) endl; (分数:4.00)_48.#include iostream #include fstream using namespace std; class complex public
16、: int real; int imag; complex( int r = 0, int i = 0) real = r; imag = i; ; complex operator + (_, complex int i = a.imag + b.imag; return _; void main () complex x(1,2), y(3,4), z; z=x+y; cout z.real “ + “ z.imag “i“ endl; (分数:4.00)_49.采用冒泡法对数组 a 中的整数由小到大进行排序。 #include iostream.h void sort(int b, in
17、t n) int i, j =0, t; for(i= 1; i n; i+) for(j =0; _; j + ) if(bj bj+1) t=bj; _; bj+1 =t; void main() int a =3,2,7,1,19,6,2,8; int i ; for(i =0; i 8; i +) cout ai “ “; cout endl; sort(a,8); for(i =0; i 8; i + ) cout ai “ “; cout endl; (分数:4.00)_50.程序的输出结果如下: m=4.3, n=3 m=6, n=9 请根据输出数据在下面程序的横线处填写正确的语
18、句。 #include iostream.h _ class Test private: T1 m, n; public: Test(T1 i, T1 j)m=i; n=j; void show() cout “m = “ m “ , n = “ n endl; ; void main() Test double a(4.3,3); a.show(); _b(6,9.6); b.show(); (分数:4.00)_五、程序分析题(总题数:2,分数:10.00)51.#include iostream.h class Complex public: Complex(double r =0, do
19、uble v =0):real(r), virt(v) friend Complex operator + (Complex a, Complex b); friend ostream private: double real; double virt; ; ostream Complex operator + ( Complex a, Complex b) return Complex( a.real + b.real, a.virt + b.virt) ; void main() Complex a(2,5), b(7,8), c(0,0); c=a+b; cout c; c=4.1 +a
20、; cout c; c=b+5.6; cout c; (分数:5.00)_52.#include iostream.h class Base public: Base ( int x, int y) a=x; b=y; virtual void Show() cout “ Base:“ a “,“ b; private: int a, b; ; class Derived:public Base public: Derived(int x, int y, int z):Sase(x, y), c(z) void Show() Base:Show(); cout “ Derived:“ c en
- 1.请仔细阅读文档,确保文档完整性,对于不预览、不比对内容而直接下载带来的问题本站不予受理。
- 2.下载的文档,不会出现我们的网址水印。
- 3、该文档所得收入(下载+内容+预览)归上传者、原创作者;如果您是本文档原作者,请点此认领!既往收益都归您。
下载文档到电脑,查找使用更方便
5000 积分 0人已下载
下载 | 加入VIP,交流精品资源 |
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 学历 职业资格 程序设计 考题 模拟 答案 解析 DOC
