ImageVerifierCode 换一换
格式:DOC , 页数:17 ,大小:49KB ,
资源ID:502605      下载积分:2000 积分
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝扫码支付 微信扫码支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【http://www.mydoc123.com/d-502605.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文([计算机类试卷]国家二级(C++)笔试模拟试卷14及答案与解析.doc)为本站会员(registerpick115)主动上传,麦多课文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知麦多课文库(发送邮件至master@mydoc123.com或直接QQ联系客服),我们立即给予删除!

[计算机类试卷]国家二级(C++)笔试模拟试卷14及答案与解析.doc

1、国家二级( C+)笔试模拟试卷 14及答案与解析 1 下列语言不属于高级语言的是 ( )。 ( A) C语言 ( B)机器语言 ( C) FORTRAN 语言 ( D) C+语言 2 数据库系统的核心是 ( )。 ( A)数据模型 ( B)数据库管理系统 ( C)软件工具 ( D)数据库 3 下列叙述中正确的是 ( )。 ( A)在模块化程序设计中,一个模块应尽量多的包括与其他模块联系的信息 ( B)在自顶向下、逐步细化的设计过程中,首先应设计解决问题的每一个细节 ( C)在模块化程序设计 中,一个模块内部的控制结构也要符合结构化原则 ( D)在程序设计过程中,不能同时采用结构化程序设计方法与

2、模块化程序设计方法 4 下列叙述中正确的是 ( )。 ( A)线性链表中的各元素在存储空间中的位置必须是连续的 ( B)线性链表中的表头元素一定存储在其他元素的前面 ( C)线性链表中的各元素在存储空间中的位置不一定是连续的,但表头元素一定存储在其他元素的前面 ( D)线性链表中的各元素在存储空间中的位置不一定是连续的,且各元素的存储J顷序也是任意的 5 以下关于数据库系统的叙述中,正确的是 ( )。 ( A)数据库只存在数据项之间的联系 ( B)数据库的数据之间和记录之间都存在着联系 ( C)数据库的数据之间和记录之间都不存在着联系 ( D)数据库的数据项之间无联系,记录之间存在联系 6 调

3、试程序过程中主要会发现三类错误,不包括 ( )。 ( A)语法错误 ( B)逻辑错误 ( C)例外错误 ( D)常规错误 7 关系 R和关系 S的并运算是 ( )。 ( A)由关系 R和关系 S的所有元组合并组成的集合,再删去重复的元组 ( B)由属于 R而不属于 S的所有元组组成的集合 ( C)由 既属于 R又属于 S的元组组成的集合 ( D)由 R和 S的元组连接组成的集合 8 在结构化程序设计思想提出之前,在程序设计中强调程序的效率。与程序的效率相比,结构化程序设计思想更重视程序的 ( )。 ( A)安全性 ( B)一致性 ( C)可理解性 ( D)合理性 9 下述内容中 ( )不属于软

4、件工程管理的范畴。 ( A)软件管理学 ( B)软件心理学 ( C)软件工程经济 ( D)软件工程环境 10 为了使模块尽可能独立,要求 ( )。 ( A)模块的内聚程序要尽量高,且各模块间的耦合程 度要尽量强 ( B)模块的内聚程度要尽量高,且各模块间的耦合程度要尽量弱 ( C)模块的内聚程度要尽量低,且各模块间的耦合程度要尽量弱 ( D)模块的内聚程度要尽量低,且各模块间的耦合程度要尽量强 11 关于面向对象的程序设计方法,下列说法正确的是 ( )。 ( A) “封装性 ”指的是将不同类型的相关数据组合在一起,作为一个整体进行处理 ( B) “多态性 ”指的是对象的状态会根据运行时要求自动

5、变化 ( C)基类的私有成员在派生类的对象中不可访问,也不占内存空间 ( D)在面向对象的程序设计中,结构化程序 设计方法仍有着重要作用 12 面向对象程序设计思想的主要特征中不包括 ( )。 ( A)继承性 ( B)功能分解,逐步求精 ( C)封装性和信息隐藏 ( D)多态性 13 在派生类中重新定义虚函数时,除了 ( )方面,其他方面都必须与基类中相应的虚函数保持一致。 ( A)参数个数 ( B)参数类型 ( C)函数名称 ( D)函数体 14 关于抽象类,下列表述正确的是 ( )。 ( A)抽象类的成员函数中至少有一个是没有实现的函数 (即无函数体定义的函数 ) ( B)派生类必须实现作

6、为基类 的抽象类中的纯虚函数 ( C)派生类不可能成为抽象型 ( D)抽象类不能用来定义对象 15 下列关于构造函数的描述中,错误的是 ( )。 ( A)构造函数可以设置默认参数 ( B)构造函数在说明类变量时自动执行 ( C)构造函数可以对静态数据成员进行初始化 ( D)构造函数可以重载 16 下面对二维数组 array 的定义,正确的是 ( )。 ( A) int array4; ( B) char array3, 4; ( C) float array (3)(4); ( D) float array34; 17 已知程序中已经定义了函数 test,其原型是 int test (int,

7、int,int);,则下列重载形式中正确的是 ( )。 ( A) char test(int, int, int); ( B) double test (int,int,double); ( C) int test(int ,int, int=0); ( D) float test(int,int,float=3.5F); 18 有如下函数模板的定义: template class T T func(Tx, Ty)return x*x+ y*y;在下列对 func的调用中不正确的是 ( )。 ( A) func(3, 5); ( B) func (3, 5); ( C) func(3, 5.5

8、); ( D) func int (3, 5.5); 19 以下不属于运算符重载应注意的问题是 ( )。 ( A)重载的运算号应保持其原有的基本语义 ( B)重载的运算符应尽可能保持其原有的特性 ( C)运算符的重载尽量不配套 ( D)使用引用参数还是非引用函数 20 关于模板,下列说法不正确的是 ( )。 ( A)用类模板定义一个对象时,不能省略实参 ( B)类模板只能有虚拟类型参数 ( C)类模板本身在编译中不会生成任何代码 ( D)类模板的成员函数都是模板函数 21 下列关于子类型的描述中,错误的是 ( )。 ( A)子类型关系是可逆的 ( B)公有派生类的对象可以初始化基类的引用 (

9、C)只有公有的继承下,派生类是基类的子类型 ( D)子类型关系是可传递的 22 如果有以下的函数定义及变量声明: void fun(double a, double b, double break;case *:d=a*b; break;case /:d=a/b; break;void main()double r; 则下列函数中,调用正确的是( )。 ( A) r=fun(60,5,7); ( B) r=fun(9.8,3.3,r,-); ( C) fun(2.2,1.5,r); ( D) fun(fun(2,5,r,+),3,r,*); 23 有以下程序 #include iostream

10、 using namespace std;class MyClasspublic: MyClass(int n) number=n; /拷贝的构造函数 MyClass(MyClass MyClass() private: int number;MyClass fun(MyClass p) MyClass temp(p); return temp;int main() MyClass obj 1 (10), obj 2(0); MyClass obi 3 (obj 1); obj2=fun(obj3); return 0;程序执行时, MyClass 类的拷贝构造函数被调用的次数是 ( )。 (

11、 A) 5 ( B) 4 ( C) 3 ( D) 2 24 在公有继承的情况下,允许派生类直接访问的基类成员包括 ( )。 ( A)公有成员 ( B)公有成员和保护成员 ( C)公有成员、保护成员和私有成员 ( D)保护成员 25 友元运算符 obj1 obj2被 C+编译器解释为 ( )。 ( A) operator (obj1,obj2) ( B) (obj1,obj2) ( C) obj2.operator (obj1) ( D) obj1.operator (obj2) 26 下面关于类概念的描述中 ( )是错误的。 ( A)类是抽象数据类型的实现 ( B)类是具有共同行为的若干对象的

12、统一描述体 ( C)类是创建对象的样板 ( D)类就是 C语言中的结构体类型 27 下面对枚举类型的描述正确的是 ( )。 ( A)枚举类型的定义为: enum Monday, Tuesday, Wednesday, Thursday, Friday Day; ( B)在 C+语言中,用户自定义的枚举类型的第一个常量的默认值是 1 ( C)可以定义如下枚举类型: enum Monday, Tuesday, Wednesday=5, Thursday, Friday=5; ( D)以上说法都不正确 28 设有以下定义: class personint num; char name10; publ

13、ic: void init (int n, char *m); ; person std 30;则下面叙述中,不正确的是 ( )。 ( A) std是一个含有 30个元素的对象数组 ( B) std数组中的每个元素都是 person类的对象 ( C) std数组中的每个元素都有自己的私有变量 num和 name ( D) std数组中的每个元素都有各自的成员函数 init 29 一个类可以同时继承多个类,称为多继承。下列关于多个继承和虚基类的表述中,错误的是 ( )。 ( A)每个派生类的构造函数都要为虚基类构造函数提供实参 ( B)多继承时有 可能出现对基类成员访问的二义性问题 ( C)使用

14、虚基类可以解决二义性问题并实现运行时的多态性 ( D)建立最派生类对象时,虚基类的构造函数会首先被调用 30 有如下程序 #include iostream using namespace std;int i=1;class Fun public:static int i;int value() return i-1;int value()const return i+1;int Fun: i=2;int main() int i=3;Fun fun1;const Fun fun2;_return ();若程序的输出结果是 :123 ( A) cout fun1.value() Fun: i

15、fun2.value(); ( B) cout Fun:i fun1.value() fun2.value(); ( C) cout fun1. value() fun2.value() Fun: i; ( D) cout fun2.value() Fun: i fun 1.value(); 31 执行以下程序后的输出结果为 ( )。 #include iostream Using namespace std;void fun(int x, int y, int *cp, int *dp) *cp=x+ y; 2*dp=x- y;void maia() int a, b, c, d; a=30

16、; b=50; fun(a, b, cout c ,, d end1; ( A) 50, 30 ( B) 30, 50 ( C) 80, 20 ( D) 80, 20 32 下列关于派生类的构造函数的叙述中,正确的是 ( )。 ( A)派生类通过成员初设列表的方法调用基类的构造函数,实现对基类的初始化 ( B)派生类构造函数的调用顺序先基类后子对象构造函数 ( C)派生类构造函数的调用顺序先子对象构造函数后基类, ( D)派生类构造函数是不能继承基类的 33 有如下程序: #include iostream using namespace std;class point int x, y;pu

17、blic: point( int vx, int vy ) X=vx; y=vy; point() x=0; y=0; point operator+ ( point p1 ) point p; int px = x + p1.x; int py = y+ p1.y; return point( px, py ); point operator-( point p1 point p; int px = x - p1.x; int py = y - p1.y; return point( px, py ); void print() cout x “,“ y end1; ;int main()

18、point p1( 10, 10 ), p2( 20, 20 ); p1 = p1 + p2; p1.print(); return ();执行后的输出结果是 ( )。 ( A) 10, 10 ( B) 20, 20 ( C) 10, 20 ( D) 30, 30 34 执行以下程序后的输出结果为 ( )。 #include iostream. b class Sample int x, y; public: Sample() x=y=0; Sample(int a, int b) x=a; y=b; void disp () cout “x=“ x “y=“ y end1; ;void ma

19、in() Sample s(2,3), *p= p- disp(); ( A) x=1, y=3 ( B) x=2, y=4 ( C) x=3, y=2 ( D) x=2, y=3 35 有如下类声明 :class SAMPLE int n; public: SAMPLE(int i=0):n(i) void setValue(int n(0);下列关于 getValue 成员函数的实现中 ,正确的是 ( )。 ( A) SAMPLE: setValue(int n0) n=n0; ) ( B) void SAMPLE: setValue(int n0) n=n0; ( C) void set

20、Value (int n0) n=n0; ( D) setValue(int n0) n=n0; 36 下列软件系统结构图的宽度为【 】。 37 Jackson方法是一种面向【 】的结构化方法。 38 诊断和改正程序中错误的工作通常称为【 】。 39 如果一个工人可管理多个设备,而一个设备只被一个工人管理,则实体 “工人 ”与实体 “设备 ”之间存在【 】关系。 40 结构化程序设计方法的主要技术是【 】、逐步求精。 41 若 a=12, b=14, c=0,则表达式 (y=(a b)?a:b) c)?y:c的值为【 】 42 如果表达式 -x中的 “-”是重载的类运算符,采用运算符函数调用格

21、式,及表达式还可以表示为【 】。 43 若从键盘输入 70,则以下程序输出的结果是【 】。 #include iostream.h void main() int a; cin a; if(a 50) cout a; if(a 40) cout a; if(a 30) cout a; 44 有如下的程序 : #include iostream #include fstream using namespace std; int main() char s25=“Programming language“; ofstream f1(DATA.TXT“); f1 “C+ Programming“;

22、f1.close(); ifstream f2 (“DATA.TXT“); if(f2.good()f2 s; f2.close(); cout s; return 0; 执行上面的程序交输出【 】。 45 如果表达式 x=y*z中的 “ ”是作为成员函数重的运算符,采用运算符函数调用格式,该表达式还可以表示为【 】。 46 在 C+语言中每个类都有一个【 】指针,该指针指向正在调用成员函数的对象。 47 若以非成员函数形式,为类 Bounce重载 “!”运算符,其操作结果为一 bool 型数据,则该运算符重载函数的原型是【 】。 48 如果不使用多态机制,那么通过基类的指针虽然可以指向派生类

23、对象,但是只能访问从基类继承的成员。下列程序没有使用多态机制,其输出结果是【 】。 #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 (); 49 下面程序的输出结果是【

24、 】。 #define MIN(a,b) (a) (b)?a:b) #include iostream.h void main() int x= 3, y=5; cout MIN(x,y) end1; 50 下列程序的输出结果是【 】。 #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; cout total(x) end1; retur

25、n 0; 国家二级( C+)笔试模拟试卷 14答案与解析 1 【正确答案】 B 2 【正确答案】 B 3 【正确答案】 C 4 【正确答案】 D 5 【正确答案】 B 6 【正确答案】 D 7 【正确答案】 A 8 【正确答案】 C 9 【正确答案】 D 10 【正确答案】 B 11 【正确答案】 D 12 【正确答案】 B 13 【正确答案】 D 14 【正确答案】 C 15 【正确答案】 C 16 【正确答案】 D 17 【正确答案】 B 18 【正确答案】 C 19 【正确答案】 C 20 【正确答案】 B 21 【正确答案】 A 22 【正确答案】 C 23 【正确答案】 B 24 【

26、正确答案】 B 25 【正确答案】 A 26 【正确答案】 D 27 【正确答案】 C 28 【正确答案】 D 29 【正确答案】 C 30 【正确答案】 A 31 【正确答案】 C 32 【正确答案】 C 33 【正确答 案】 D 34 【正确答案】 D 35 【正确答案】 B 36 【正确答案】 3 37 【正确答案】 数据结构 38 【正确答案】 调试 或 程序调试 或 软件调试 或 Debug(英文字母大小写均可 ) 或 调试程序或调试软件 39 【正确答案】 一对多 或 I:N, 40 【正确答案】 自顶向下 41 【正确答案】 14 42 【正确答案】 x. opelator-() 43 【正确答案】 707070 44 【正确答案】 C+ 45 【正确答案】 x=y. operator*(z) 46 【正确答案】 this 47 【正确答案】 bool operator!(Bounce); 48 【正确答案】 BD 49 【正确答案】 3 50 【正确答案】 20

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