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

上传人:roleaisle130 文档编号:502638 上传时间:2018-11-29 格式:DOC 页数:16 大小:44.50KB
下载 相关 举报
[计算机类试卷]国家二级(C++)笔试模拟试卷17及答案与解析.doc_第1页
第1页 / 共16页
[计算机类试卷]国家二级(C++)笔试模拟试卷17及答案与解析.doc_第2页
第2页 / 共16页
[计算机类试卷]国家二级(C++)笔试模拟试卷17及答案与解析.doc_第3页
第3页 / 共16页
[计算机类试卷]国家二级(C++)笔试模拟试卷17及答案与解析.doc_第4页
第4页 / 共16页
[计算机类试卷]国家二级(C++)笔试模拟试卷17及答案与解析.doc_第5页
第5页 / 共16页
点击查看更多>>
资源描述

1、国家二级( C+)笔试模拟试卷 17及答案与解析 1 下列关于栈的叙述正确的是 ( )。 ( A)在栈中只能插入数据 ( B)在栈中只能删除数据 ( C)栈是先进先出的线性表 ( D)栈是先进后出的线性表 2 数据库、数据库系统和数据库管理系统之间的关系是 ( )。 ( A)数据库包括数据库系统和数据库管理系统 ( B)数据库系统包括数据库和数据库管理系统 ( C)数据库管理系统包括数据库和数据库系统 ( D)三者没有明显的包含关系 3 开发软件所需的高成本和产品的低质量之间有着尖锐的矛盾 ,这种现象称做( )。 ( A)软件投机 ( B)软件危机 ( C)软件工程 ( D)软件产生 4 数据

2、结构作为计算机的一门学科,主要研究数据的逻辑结构、对各种数据结构进行的运算,以及 ( )。 ( A)数据的存储结构 ( B)计算方法 ( C)数据映象 ( D)逻辑存储 5 以下不属于对象的基本特点的是 ( )。 ( A)分类性 ( B)多态性 ( C)继承性 ( D)封装性 6 对于长度为 n的线性表,在最坏情况下,下列各排序法所对应的比较次数中正确的是 ( )。 ( A)冒 泡排序为 n/2 ( B)冒泡排序为 n ( C)快速排序为 n ( D)快速排序为 n(n-1)/2 7 下列对于线性链表的描述中正确的是 ( )。 ( A)存储空间不一定是连续,且各元素的存储顺序是任意的 ( B)

3、存储空间不一定是连续,且前件与元素一定存储在后件元素的前面 ( C)存储空间必须连续,且前件元素一定存储在后件元素的前面 ( D)存储空间必须连续,且各元素的存储顺序是任意的 8 设有关键码序列 (16, 9, 4, 25, 15, 2, 13, 18, 17, 5, 8, 24),要按关键码值递增的次序排序,采 用初始增量为 4的希尔排序法,一趟扫描后的结果为 ( )。 ( A) (15, 2, 4, 18, 16, 5, 8, 24, 17, 9, 13, 25) ( B) (2, 9, 4, 25, 15, 16, 13, 18, 17, 5, 8, 14) ( C) (9, 4, 16

4、, 15, 2, 13, 18, 17, 5, 8, 24, 15) ( D) (9, 16, 4, 25, 2, 15, 13, 18, 5, 17, 8, 24) 9 数据库模型提供了两个映像,它们的作用是 ( )。 ( A)控制数据的冗余 ( B)实现数据的共享 ( C)使数据结构化 ( D)实现数据独立性 10 软件工程的理论和技术性研究的内容主要包括软件开发技术和 ( )。 ( A)消除软件危机 ( B)软件工程管理 ( C)程序设计自动化 ( D)实现软件可重用 11 已知下列语句中的 x和 y都是 int型变量,其中错误的语句是 ( )。 ( A) x=y+; ( B) x=+y

5、; ( C) (x+ y)+ ( D) +x=y; 12 下列有关内联函数的叙述中,正确的是 ( )。 ( A)内联函数在调用时发生控制转移 ( B)内联函数必须通过关键字 inline 来定义 ( C)内联函数是 通过编译器来实现的 ( D)内联函数函数体的最后一条语句必须是 return 语句 13 若有说明: int s3 4=0);,则下面叙述正确的是 ( )。 ( A)只有元素 s00可得到初值 0 ( B)此说明语句不正确 ( C)数组 s中各个元素都可得到初值,但其值不一定为 0 ( D)数组 s中每个元素均可得到初值 0 14 与以下程序段等价的是 ( )。 while(a)i

6、f(b) continue;c; ( A) while(a) if(!b) c; ( B) while(c) if(!b) break; c; ( C) while(c) if(b) c; ( D) while(a) if(b) break; c; 15 下列程序段循环 ( )次。 int x=-10;while(+x) ( A) 9 ( B) 10 ( C) 11 ( D)无限 16 C+语言中,编译过程后生成的文件类型为 ( )。 ( A) *.cpp ( B) *.obj ( C) *.h ( D) *.exe 17 已知 :int m=10;,在下列定义引用的语 句中,正确的是 ( )

7、。 ( A) int ;则执行语句MyClass a,b 2, *p2;后,程序的输出结果是 ( )。 ( A) 11 ( B) 111 ( C) 1111 ( D) 11111 24 若有下面的函数调用: fun (a+ b, 3, max(n-1, b) 则 fun的实参个数是( )。 ( A) 3 ( B) 4 ( C) 5 ( D) 6 25 关于纯虚函数,下列表述正确的是 ( )。 ( A)纯虚函数是没有给出实现版本 (即无函数体定义 )的虚函数 ( B)纯虚函数的声明总是以 “=0”结束 ( C)派生类必须实现基类的纯虚函数 ( D)含有纯虚函数的类不可能是派生类 26 已知一程序

8、运行后执行的第一个输出操作是 cout setw(10) setfill(*) 1234; 则此操作的输出结构是 ( )。 ( A) 1234 ( B) *1234 ( C) *1234 ( D) 1234* 27 关于 new运算符的下列描述中,错误的是 ( )。 ( A)用来动态创建对象和对象数组 ( B)用它创建的对象和对象数组可以使用运算符 delete删除 ( C)创建对象时要调用构造函数 ( D)它创建对象数组时必须制定初始值 28 假定要对类 AB定义加号操作符重载成员函数,实现两个 AB类对象的加法,并返回相加结果,则该成员函数的声明语句为 ( )。 ( A) AB opera

9、tor+(AB class Obj static int i;public: Obj()i+; -Obj()i-; static int getVal()return i; ;int Obj:i=0;void f()Obj ob2; cout ob2.getVal(); hat main() Obj ob1; f(); Obj *ob3=new Obj; cout ob3- getVal(); delete ob3; cout Obj: getVal(); return (); 程 序的输出结果是 ( )。 ( A) 232 ( B) 231 ( C) 222 ( D) 221 31 已知 p

10、是一个指向类 Sample数据成员 m的指针, s是类 Sample 的一个对象。如果要给 m赋值为 5, ( )是正确的。 ( A) s.p=5 ( B) s- p=5 ( C) s.*p=5 ( D) *s.p=5 32 有如下类的定义,下划线处的语句是 ( )。 class MyClass_ int x, y;Public:MyClass (int a=0,int b=0)x=a;y=b;static void change()y-=10;y-=10; ( A) static ( B) const ( C) mutable ( D)不需要填入内容 33 下列是重载乘法运算符的函数原型声明

11、,其中错误的是 ( )。 ( A) MyClass operator * (double, double); ( B) MyClass operator * (double, MyClass); ( C) MyClass operator * (MyClass, double); ( D) MyClass operator * (MyClass, MyClass); 34 有如下程序 :#include iostream using namespace std;class Baseprivate: char c;public: Base(char n):c(n) Base() cout c;

12、;class Derived: public Baseprivate: char c;public: Derived(char n):Base(n+1),c(n) Derived() cout c; ;int main() Derived obj(x); return 0; 执行上面的程序将输出 ( )。 ( A) xy ( B) yx ( C) x ( D) y 35 有以下程序 #include iostream using namespace std;class Complexpublic: Complex(double r=0,double i=0):re(r),im(i) doubl

13、e real() const return re; double imag() const return im; Complex operator+(Complex c) const return Complex(re+c.re,im+c.im);private: double re,im;int main() Complex a =Complex(1,1)+ Complex(5); cout a.real() + a.imag() i end1; retura 0; ( A) 6+6i ( B) 6+1i ( C) 1+6i ( D) 1+1i 36 在深度为 5的完全二叉树中,度为 2的结

14、点数最多为【 】。 37 在算法正确的前提下,评价一个算法的两个标准是【 】。 38 软件生命周期包括 8个阶段。为了使各时期的任务更明确,又可分为 3个时期:软件定义期、软件开发期、软件维护期。编码和测试属于【 】期。 39 程序文件的编译错误分为语法错误和【 】两类。 40 耦合和内聚是评价模块独立性的两个主要标准,其中【 】反映了模块内各成分之间的联系。 41 带参数的流操纵算子【 】与成员函数 unsetf执行同样的功能。 42 重载的流运算符函数应该被定义为类的【 】函数。 43 头文件【 】中包含了处理用户控制的文件操作所需的信息。 44 有一种只在循环语句或 switch语句中使

15、用的流程控制语句,表示该语句的关键字是【 】。 45 已知下列程序的输出结果是 42,请将画线处缺失的部分补充完整。 #include iostream using namespace std; class Foo int value; public: Foo 0=:value(0) void setValue(int value) 【 】 = value; /给 Foo的数据成员 value赋值 void print() cout value; ; int main() Foo f; f.setValue(42); f.print(); return(); 46 下面程序的运行结果是【 】。

16、 #include iostream.h void fun(ira a=a+b+i; i=i+a; void main() int x=5,y=2; fun(x,y); eout x “,; fun(x); cout x endl; 47 语句 cout setiosflagags(ios:showpos) 125 “/t“ -125 endl;的输出结果为【 】。 48 有如下类声明: class MyClass int i; private:int j; protected: int k; public: int m, n; 其中,私有成员的数量为【 】。 国家二级( C+)笔试模拟试卷

17、17答案与解析 1 【正确答案】 D 2 【正确答案】 B 3 【正确答案】 B 4 【正确答案】 A 5 【正确答案】 C 6 【正确答案】 D 7 【正确答案】 A 8 【正确答案】 A 9 【正确答案】 D 10 【正确答案】 B 11 【正确答案】 C 12 【正确答案】 C 13 【正确答案】 D 14 【正确答案】 A 15 【正确答案】 A 16 【正确答案】 B 17 【正确答案】 A 18 【正确答案】 D 19 【正确答案】 C 20 【正确答案】 D 21 【正确答案】 A 22 【正确答案 】 C 23 【正确答案】 B 24 【正确答案】 A 25 【正确答案】 B

18、26 【正确答案】 B 27 【正确答案】 D 28 【正确答案】 B 29 【正确答案】 A 30 【正确答案】 D 31 【正确答案】 C 32 【正确答案】 A 33 【正确答案】 A 34 【正确答案】 A 35 【正确答案】 B 36 【正确答案】 15 37 【正确答案】 时间复杂度和空间复杂度 38 【正确答案】 软件开发 39 【正确答案】 连接 错误 40 【正确答案】 内聚 41 【正确答案】 resetioflags 42 【正确答案】 友元 43 【正确答案】 fstream.h 44 【正确答案】 break 45 【正确答案】 this-value 或 Foo:value 46 【正确答案】 9,23 47 【正确答案】 0 48 【正确答案】 2

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

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

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