[计算机类试卷]国家二级(C++)笔试模拟试卷240及答案与解析.doc
《[计算机类试卷]国家二级(C++)笔试模拟试卷240及答案与解析.doc》由会员分享,可在线阅读,更多相关《[计算机类试卷]国家二级(C++)笔试模拟试卷240及答案与解析.doc(21页珍藏版)》请在麦多课文档分享上搜索。
1、国家二级( C+)笔试模拟试卷 240及答案与解析 1 在结构化程序设计中,模块划分的原则是 A) 各模块应包括尽量多的功能 B) 各模块的规模应尽量大 C) 各模块之间的联系应尽量紧密 D) 模块内具有高内聚度,模块间具有低耦合度 2 下列说法正确的是 ( A)一个关系可以有多个候选键 (码 ) ( B)一个关系只有一个候选键 (码 ) ( C)一个关系所有属性是候选键 (码 ) ( D)一个关系所有属性都不是候选键 (码 ) 3 下列叙述中正确的是 ( A)所有形态的二叉树都只能采用链式存储结构 ( B)循 环队列是队列的一种存储方式 ( C)栈只能采用顺序存储结构 ( D)循环队列与循环
2、链表都属于链式存储结构 4 常成员函数不能修改任何的数据成员 ( A) 3 ( B) 4 ( C) 5 ( D) 6 5 若采用孩子兄弟链表作为树的存储结构,则树的后序遍历应采用二叉树的 ( )。 ( A)前序遍历算法 ( B)层次遍历算法 ( C)后序遍历算法 ( D)中序遍历算法 6 C+源晚间中包含的输入 /输出头文件为 ( )。 ( A) stdio.h ( B) stdafx.h ( C) iostream.h ( D) stream.h 7 在软件测试设计中,软件测试的主要目的是 ( A)实验性运行软件 ( B)证明软件正确 ( C)找出软件中全部错误 ( D)发现软件错误而执行程
3、序 8 程序流程图中的箭头代表的是 ( )。 ( A)数据流 ( B)控制流 ( C)调用关系 ( D)组成关系 9 下列叙述中错误的是 ( A)二又树不是线性结构 ( B)线性表是非线性结构 ( C)线性链表是线性结构 ( D)栈与队列是线性结构 10 如果只想得到 1024个元素组成的序列中第 5个最小元素之前的部分 排序的序列,用 ( )方法最快。 ( A)冒泡排序 ( B)快速排序 ( C)简单选择排序 ( D)堆排序 11 执行语句: cout setfill(*) setw(10) setfill(#) left 123“OK“ endl;后将输出 ( A) 123*OK ( B)
4、 123#OK ( C) 123*OK* ( D) 123#OK# 12 下列程序的输出结果是 ( )。 #include iostream using namespace std; int main() char a=“Hello,Test“; char *p=a; while(*p) if(*p =a else cout *p; p+; return 0; ( A) hello,test ( B) Hello,Test ( C) HELLO,TEST ( D) hELLO,tEST 13 有如下程序: #include iostream using namespace std; class
5、 TestClass private; char c; public; TestClass (char n):c(n) TestClass () cout c; ; class TestClass1:public TestClass Private: char c; public: TestClass1(char n):TestClass (n+1),c(n) TestClass1() cout c; ; int main() TestClass1 obj(x); return 0; 执行上面的程序输出 ( )。 ( A) xy ( B) yx ( C) x ( D) y 14 一个类的友元函
6、数能够访问该类的 ( A)私有成员 ( B)保护成员 ( C)公用成员 ( D)所有成员 15 考虑函数原型 void test(int a, int b=7, char z=*),下面的函数调用中,属于不合法调用的是 ( )。 ( A) test(5); ( B) test(5, 8); ( C) test(6, #); ( D) test(0, 0, x); 16 有如下程序: #include iostream using namespace std; class MyClass public: MyClass()+count; MyClass()-count; static int g
7、etCount()return count; private: static int count; ; int MyClass:count=0; int main() MyCl ( A) 121 ( B) 232 ( C) 221 ( D) 122 17 能正确表示逻辑关系 :“a10或 a0”的 C语 言表达式是 ( A) a 10 or a 0 ( B) a 0 | a 10 ( C) a 10 while(+x) ( A) 9 ( B) 10 ( C) 11 ( D)无限 25 有如下语 句序列: int k=0; dOk+=5; cout $;) while(k 19); while(
8、k- 0)cout *;执行上面的语句序列输出字符 $和 *的个数分别是 ( )。 ( A) 4和 20 ( B) 5和 20 ( C) 4和 21 ( D) 5和 21 26 若有以下定义: char a: int b; float c; double d; 则表达式 a*b+d c的值的类型为 _。 ( A) float ( B) int ( C) char ( D) double 27 下列关于 C+函数的叙述中,正确的是 _ 。 ( A)每个函数至少要具有一个参数 ( B)每个函数都必须返回一个值 ( C)函数在被调用之前必须先声明 ( D)函数不能自己调用自己 28 以下关于 C+语
9、言类的说法中正确的是 ( )。 ( A) C+语言的默认访问权限是 private ( B) C+语言中的类定义,用户一定要自己定义一个构造函数用于实例化类 ( C) C+语言中的成员函数的实现部分一定要写在类定义外 ( D) C+语言中的类不能够嵌套定义 29 在派生类中重新定义虚函数时,除了 ( )方面,其他方面都必须与基类中相应的虚函数保持一致。 ( A)参数个数 ( B)参数类型 ( C)函数名称 ( D)函数体 30 在 int a=10, *p= sample add(sample s1,sample s2) this- n=s1.n+s2.n; return (*this); v
10、oid disp() cout “n=“ n end1; int main() sample s1(10),s2(5),s3; s3.add(s1,s2); s3.disp(); return 0; 程序运行后,输出的结果是 ( A) n=10 ( B) n=5 ( C) n=20 ( D) n=15 34 有如下程序: #include iostream using namespace std; int main() cout.fill(*); cout.width(5); cout scientific 315926535end1; return 0; 程序运行后,输出的结果是 ( A)
11、3.14E+02 ( B) 3.14E+02 ( C) *3.14e+002 ( D) 314.16 35 若 a, b, c1, c2, x, y均是整型变量,正确的 switch语句是 ( )。 ( A) switch(a+b) ( B) switch(a*a+b*b) case: y=a+b; break; case 3: case: y=a-b; break; case 1: y=a+b; break; case 3: y=b-a;break; ( C) switcha ( D) switch(a-b) casec1: y=a-b; break; default: y=a*b; bre
12、ak; casec2: x=a*b; break; case 3: case4: x=a+b; break; default:x=a+b; case 10: case 11: y=a-b; break; 36 数据库管理系统常见的数据模型有层次模型、网状模型和 _3种。 37 38 数据结构分为线性结构与非线性结构,带链的栈属于 _。 39 问题处理方案的正确而完整的描述称为【 】。 40 _是一种特殊的成员函数,它主要用来为对象分配内存空间,对类的数据成员进行初始化并执行对象的其他内部管理操作。 41 C+语言的基本控制结构为顺序结构、选择结构和 _。 42 C中封装性、继承性和 _是面向对
13、象思想的主要特征。 43 以下程序的输出结果是 _。 #include iostream.h unsigned fun(unsigned num) unsigned k 1; dok * num%10;num/ 10;while(num) ; return k; void main( ) unsigned n 26; cout fun(n) endl; 44 请将下列程序的横线处补充完整,使得输出结果为 bbaa #include iostream using namespace std; class A public: _cout “aa“; ; class B:public A publi
14、c: B()cout “bb“; ; int main() B*p=new 45 C+中通常和一个运算符连用,构成一个运算符函数名的 C+关键字为_。 46 当派生类中有和基类相同名字的成员时,派生类的同名成员会【 】基类的成员。 47 写出执行完下列代码段之后指定变量的值: boo1 x=true,y=false,z=false; x=x y=xy z=!(x!=y)(y=z), 则 x=false, y=false, z=【 】。 48 在执行完下面的程序后,变量 k的值为【 】。 int i, j, k; for(i=0, j=10; i :j; i+,j-) k=i+j; 49 假定
15、A为一个类,则语句 A(A int fun2(int int main() int x=1, y=2; y=fun 1(fun2(x); cout X , y; return 0: 程序的输出结果是 _。 国家二级( C+)笔试模拟试卷 240答案与解析 1 【正确答案】 D 【试题解析】 本题考查软件工程中软件设计的概念和原理。人们在开发计算机软件的长期实践中积累了丰富的经验,总结这些经验得到如下的启发式规则: 改进软件结构,提高模块独立性。通过模块的分解或合并,力求降低耦合、提高内聚。低耦合是指降低不同模块间相互依赖的紧密程度,高内聚是指提高一个模块内各元素彼此结合 的紧密程度。 模块的规
16、模应适中。一个模块的规模不应过大,过大的模块往往是由于分解不够充分;过小的模块开销大于有益操作,而且模块过多将使系统接口复杂,因此过小的模块有时不值得单独存在。 模块的功能应该可以预测,但也要防止模块功能过分局限。如果模块包含的功能太多,则不能体现模块化设计的特点;如果模块的功能过分局限,使用范围就过分狭窄。本题的正确答案是选项 D。 2 【正确答案】 A 【试题解析】 一个关系可以有多个候选键 (码 ),但不能所有属性都是或都不是候选键 (码 )。 3 【正确答案】 B 【试题解析】 一般来说,二叉树采用链式存储结构,但由于完全二叉树的特点,采用顺序存储也能方便地访问其中的每一个元素。因此,
- 1.请仔细阅读文档,确保文档完整性,对于不预览、不比对内容而直接下载带来的问题本站不予受理。
- 2.下载的文档,不会出现我们的网址水印。
- 3、该文档所得收入(下载+内容+预览)归上传者、原创作者;如果您是本文档原作者,请点此认领!既往收益都归您。
下载文档到电脑,查找使用更方便
2000 积分 0人已下载
下载 | 加入VIP,交流精品资源 |
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 计算机 试卷 国家 二级 笔试 模拟 240 答案 解析 DOC
