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

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

1、国家二级( C+)笔试模拟试卷 28及答案与解析 1 下列叙述中正确的是 ( )。 ( A)数据的逻辑结构与存储结构必定一一对应 ( B)由于计算机存储空间是向量式的存储结构,因此,数据的存储结构一定是线性结构 ( C)程序设计语言中的数组一般是顺序存储结构,因此,利用数组只能处理线性结构 ( D)以上三种说法都不对 2 数据库管理系统是位于用户与操作系统之间的一个数据管理软件,以下不属于它的基本功能的是 ( )。 ( A)数据共享功能 ( B)数据定义功能 ( C)数据操纵功能 ( D)数据 库的运行管理与控制功能 3 一个函数带有参数说明时,则参数的默认值应该在 ( )中给出。 ( A)函

2、数定义 ( B)函数声明 ( C)函数定义或声明 ( D)函数调用 4 下列叙述中,不属于软件需求规格说明书的作用的是 ( )。 ( A)便于用户、开发人员进行理解和交流 ( B)反映出用户问题的结构,可以作为软件开发工作的基础和依据 ( C)作为确认测试和验收的依据 ( D)便于开发人员进行需求分析 5 软件详细设计的主要任务是确定每个模块的 ( )。 ( A)算法和使用的数据结构 ( B)外部接口 ( C)功能 ( D)编程 6 在软件设计中,不属于过程设计工具的是 ( )。 ( A) PDL(过程设计语言 ) ( B) PAD图 ( C) N-S图 ( D) DFD图 7 下面不属于软件

3、设计原则的是 ( )。 ( A)抽象 ( B)模块化 ( C)自底向上 ( D)信息隐蔽 8 流程控制语句的基本控制结构有三种,不属于这一种结构的是 ( )。 ( A)顺序结构 ( B)选择结构 ( C)循环结构 ( D)计算结构 9 程序的三种基本控制结构是 ( )。 ( A)过程、子过程和分程序 ( B)顺序、选择和重复 ( C)递归、堆栈和队列 ( D)调用、返回和转移 10 若某二叉树的前序遍历访问顺序是 abdgcefh,中序遍历访问顺序是 dgbaechf,则其后序遍历的结点访问顺序是 ( )。 ( A) bdgcefha ( B) gdbecfha ( C) bdgaechf (

4、 D) gdbehfca 11 要定义数组 A,使得其中每个元素的数据依次为: 3、 9、 4、 8、 0、 0、 0,错误的定义语句是 ( )。 ( A) int A=3,9,4,8,0,0,0); ( B) int A9: 3,9,4,8,0,0,0); ( C) int A=3,9,4,8); ( D) int A7=3,9,4,8); 12 以下非法的赋值表达式是 ( )。 ( A) n=(i=2, +i); ( B) j+; ( C) +(i+1); ( D) x=j 0; 13 下面的语句中错误的是 ( )。 ( A) int a=5; int xa; ( B) const int

5、 a=5; int xa; ( C) int n=5; int *p=new intn; ( D) const int n=5; int *p=new inta; 14 以下不能正确进行字符串赋值初值的语句是 ( )。 ( A) char str5=“good!“; ( B) char str=“good!“; ( C) char *str=“good!“; ( D) char str5=g,o,o,d); 15 下列关于 break语句的叙述不正确的是 ( )。 ( A) break语句可用在循环体中,它将使执行流程跳出本层循环体 ( B) break语句可用 在 switch语句中,它将使

6、执行流程跳出当前 switch语句 ( C) break语句可用在 if语句中,它将使执行流程跳出当前订语句 ( D) break语句在一层循环体中可以出现多次 16 在函数的返回值类型与返回值表达式类型的描述中,错误的是 ( )。 ( A)函数返回值的类型是在定义函数时确定的,在函数调用时是不能改变的 ( B)函数返回值的类型就是返回值表达式的类型 ( C)函数返回值的类型与返回值类型不同时,函数表达式类型应转换成返回值类型 ( D)函数返回值的类型决定了返回值表达式的类型 17 有如下语句序列: int k=0; dOk+=5; cout $;) while(k 19); while(k-

7、 0)cout *;执行上面的语句序列输出字符 $和 *的个数分别是 ( )。 ( A) 4和 20 ( B) 5和 20 ( C) 4和 21 ( D) 5和 21 18 有以下程序: #include iostream using namespace std; int main() int x=15; while(x 10j+=2) s=10*s+pij-0; cout s; return 0; 该程序的输出结果是 ( )。 ( A) 69825 ( B) 63825 ( C) 6385 ( D) 693825 21 类的析构函数的作用是 ( )。 ( A)一般成员函数 ( B)类的初 始

8、化 ( C)对象的初始化 ( D)释放由对象所占用的资源 22 已有函数 max(a, b),为了使函数指针变量 p指向函数 max,则下面选项中赋值方法正确的是 ( )。 ( A) p=max ( B) *p=max ( C) p=max(a,b) ( D) *p=max(a,b) 23 有如下程序: #include iostream.h class Base protected:int i; public: int j; ; class Derived: public Base int m; public: int n; ; int main() Derived d; d.i=0; /1

9、d.j=0; /2d.m=0; /3d.n=0; /4return 0; 其中主函数中有两个赋值语句有错,这两个错误的赋值语句是 ( )。 ( A) 1和 2 ( B) 1)和 3 ( C) 2和 3 ( D) 2和 4 24 下列关于 new运算符的描述中错误的是 ( )。 ( A)使用运算符 new创建对象数组时必须定义初始值 ( B)使用运算符 new创建对象时,会调用类的构造函数 ( C)运算符 new可以用来动态创建对象和对象数组 ( D)使用 new运算符创建的对象可以使用运算符 delete删除 25 在进行了任何 C+流的操作后,都可以用 C+流的有关成员函数检测流的状态,其中

10、只能用于检测刚进行的操作是否失败函数名是 ( )。 ( A) fail ( B) eof ( C) bad ( D) good 26 下列有关拷贝构造函数的描述中错误的是 ( )。 ( A)拷贝构造函数是一种构造函数 ( B)拷贝构造函数与一般的构造函数一样,可以设置多个形参 ( C)每一个类中都必须有一个拷贝构造函数 ( D)拷贝构造函数的功能是用一个已知对象去初始化一个正在创建的对象。 27 下列关于 this指针的叙述中,正确的是 ( )。 ( A) this指针是一个隐含指针,它隐含于类的成员函数中 ( B)只有在使用 this时,系统才会将对象的地址赋值给 this ( C)类的友元

11、函数也有 this指针 ( D) this指针表示了成员函数当前操作的数据所属的对象 28 下列重载函数中,正确的是 ( )。 ( A) void fun(int a, float b); void fun(int c, float d) ( B) void fun(int a, float b); void fun(float a, int b) ( C) float fun(int a, float b); int fun(int b, float a) ( D) int fun(int a, int b); float fun(int a, int b) 29 下面的函数模板定义中错误的

12、是 ( )。 ( A) template class Q ( B) template class Q QF(Qx)return Q-x; QF(Qx)return x+x; ( C) template class T ( D) template class T TF(Tx)return x*x; boolP(Tx)return X 1;) 30 有如下程序: #include iostream using namespace std; int main() cout.fill(*); cout.width(5); cout scientific 315926535endl; retrun 0;

13、 程序运行后,输出的结果是 ( )。 ( A) 3.14E+02 ( B) 3.14E+02 ( C) *3.14e+002 ( D) 314.16 31 下面关于构造函数和析构函数的描述中,错误的是 ( )。 ( A)析构函数可以声明为虚函数 ( B)对虚析构函数的调用可以采用动联编 ( C)一个类的虚函数仅对派生类中重定义的函数起作用,对其他函数没有影响 ( D)构造函数可以声明为虚函数 32 以下程序的输出结果是 ( )。 #include iostream using namespace std; int main() cout.fill(*); cout.width(5); cout

14、 hex 100endl; return (); ( A) *100 ( B) *64 ( C) 100* ( D) 64* 33 下列说法中错误的是 ( )。 ( A)公有继承时基类中的 public成员在派生类中仍是 public的 ( B)公有继承时基类中的 private成员在派生类中仍是 private的 ( C)私有继承时基类中的 public成员在派生类中是 private的 ( D)保护继承时基类 中的 public成员在派生类中是 protected的 34 下面程序的运行结果是 ( )。 #include iostream.h int x=5; int fun(int a)

15、 int c; C=X*a; retum c; void main() int x=3,a=4; x=x+fun(a); cout “x“” X endl; ( A) x=15 ( B) x=17 ( C) x=23 ( D) x=25 35 有如下程序 #include iostream using namespace std; class base public: virtual void f1() cout “F1Base“; virtual void f2() cout “F2Base“; ; class derive:public base void f1() cout “F1 De

16、rive“; void f2(int x) cout “F2 Derive“; ; int main() base obj1, *p; derive obj2; p= p- f1(); p- f2(); return (); ) 执行后的输出结果是 ( )。 ( A) F1Derive F2Base ( B) F1Derive F2Derive ( C) F1Base F2Base ( D) F1Base F2Derive 36 给出下列二叉树的前序序列【 】。 37 目前,有两种重要的高级语言,分别是结构化程序设计和【 】。 38 若结点的存储地址与其关键字之间存在某种映射关系,则称这种存储

17、结构为【 】。 39 计算机辅助软件工程,简称【 】。 40 有如下关系:学生 (学号,姓名,性别,专业号,年龄 ), 将属性年龄的取值范围定义在 0-120之间符合【 】。 41 若有: int a=10, b=9, c; 则在计算表达式 c=(a%11)+(b=3), c+=2后,变量 c的值为【 】。 42 根据变量定义 “statlc int x5, y23=9, 6, 3, 1, 4, 7; ”, y12=【 】。 43 下面程序的输出结果是【 】。 #include iostream.h int d=1; int fun(int p) static int d=5; d+=p; c

18、out d “ “; return d; void main() int a: 3; cout fun(a+fun(D) ) end1; 44 以下程序段的输出结果是 。 #include iostream.h void ref(int void main() int val=1; cout “旧值: ” val end1; ref(val); cout ”新值: ” val end1; void ref(int : class B: public A public: void disp() cout “ class B! “ end1: ; class C: public A public:

19、 void disp() cout “class C! “ ( end1; ; void main() A a, *ptr; B b; C c; a. disp(); b. disp(); c. disp(); ptr= ptr- disp(); ptr= ptr- disp(): 47 所有的函数模板定义都是以关键字 template开始的,在 template之后使用【 】括起来的形参表。 48 表达式 cout hex改用 ios类的成员函数表示为【 】。 49 c+提供的动态内存分配和释放的操作符为【 】和【 】。 50 cout n还可以表示为【 】 ,cout. width(10)

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

21、 24 【正确答案】 A 25 【正确答案】 A 26 【正确答案】 B 27 【正确答 案】 D 28 【正确答案】 B 29 【正确答案】 A 30 【正确答案】 A 31 【正确答案】 D 32 【正确答案】 B 33 【正确答案】 B 34 【正确答案】 C 35 【正确答案】 A 36 【正确答案】 ABEFDHG 37 【正确答案】 面向对象程序设计 38 【正确答案】 顺序存储结构 39 【正确答案】 CASE 40 【正确答案】 用户定义的完整性 41 【正确答案】 15 42 【正确答案】 7 43 【正确答案】 6 15 15 44 【正确答案】 旧值: 1 新值: 10 45 【正确答案】 类型转换函数 46 【正确答案】 class A! class B! class C! class B! class C! 47 【正确答案】 尖括号 48 【正确答案】 cout. serf(los: :hex, basefield); 49 【正确答案】 new,delete 50 【正确答案】 count end1;count setw(10);

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

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

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