全国计算机等级考试 二级C++ 笔试模拟试题(十)及答案分析.doc_第1页
全国计算机等级考试 二级C++ 笔试模拟试题(十)及答案分析.doc_第2页
全国计算机等级考试 二级C++ 笔试模拟试题(十)及答案分析.doc_第3页
全国计算机等级考试 二级C++ 笔试模拟试题(十)及答案分析.doc_第4页
全国计算机等级考试 二级C++ 笔试模拟试题(十)及答案分析.doc_第5页
已阅读5页,还剩12页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

全国计算机等级考试 二级C+ 笔试模拟试题(十)一、选择题在下列各题的A)、B)、C)、D)四个选项中,只有一个选项是正确的,请将正确的选项涂写在答题卡相应位置上,答在试卷上不得分。 (1)数据结构作为计算机的一门学科,主要研究数据的逻辑结构、对各种数据结构进行的运算,以及A)数据的存储结构B)计算方法C)数据映象D)逻辑存储 (2)串的长度是A)串中不同字符的个数B)串中不同字母的个数C)串中所含字符的个数且字符个数大于零D)串中所含字符的个数 (3)在计算机中,算法是指A)加工方法B)解题方案的准确而完整的描述 C)排序方法D)查询方法 (4)以下不属于对象的基本特点的是A)分类性B)多态性C)继承性D)封装性 (5)开发软件所需高成本和产品的低质量之间有着尖锐的矛盾,这种现象称做A)软件投机B)软件危机C)软件工程D)软件产生 (6)下面不属于软件设计原则的是)抽象)模块化)自底向上)信息隐蔽 (7)开发大型软件时,产生困难的根本原因是A)大系统的复杂性B)人员知识不足C)客观世界千变万化D)时间紧、任务重 (8)下列SQL语句中,用于修改表结构的是A)ALTERB)CREATEC)UPDATED)INSERT (9)数据库、数据库系统和数据库管理系统之间的关系是A)数据库包括数据库系统和数据库管理系统B)数据库系统包括数据库和数据库管理系统C)数据库管理系统包括数据库和数据库系统D)3者没有明显的包含关系(10)关系模型允许定义3类数据约束,下列不属于数据约束的是A)实体完整性约束B)参照完整性约束C)域完整性约束D)用户自定义的完整性约束(11)C+语言中标点符号中表示一条预处理命令开始的是A)#B);C)*D)(12)每个C+程序中都必须有且仅有一个A)类B)预处理命令C)主函数D)语句(13)sizeof(float)是A)一个双精度型表达式B)一个整型表达式C)一种函数调用D)一个不合法的表达式(14)设有int x=11;,则表达式(x+*2/3)的值是A)7B)8C)11D)12(15)设有程序段int k=10;while(k=0)k=k-1;则下面描述中正确的是A)循环执行10次B)无限循环C)循环体语句一次也不执行D)循环体语句执行一次(16)对表达式for(表达式1; ;表达式3)可理解为A)for(表达式1;0;表达式3)B)for(表达式1;1;表达式3)C)for(表达式1;表达式3;)D)for(;表达式3)(17)以下不正确的定义语句是A)double x5=2.0,4.0,6.0,8.0,10.0;B)int y5=0,1,3,5,7,9;C)char c1=1,2,3,4,5;D)char c2=x10,xa,x8;(18)有如下说明int a10=1,2,3,4,5,6,7,8,9,10,*p=a;则数值为9的表达式是A)*p+9B)*(p+8)C)*p+=9D)p+8(19)下列函数的运行结果是#includeint f(int a,int b) int c;if(ab)c=1;else if(a=b)c=0;else c=-1;return(c);void main() int i=2,j=3;int p=f(i,j);cout p;A)-1B)1C)2D)编译出错,无法运行(20)以下对C+语言函数的有关描述中,正确的是A)在C+语言中调用函数时,只能把实参的值传给形参,形参的值不能传送给实参B)C+语言函数既可以嵌套定义又可以递归调用C)函数必须无返回值,否则不能使用函数D)函数必须有返回值,返回值类型不定(21)关于静态数据成员的描述中正确的是A)类的静态数据成员不是类的所有对象共享的数据B)类的静态数据成员不能被类的成员函数调用C)类的静态数据成员不能被类的构造函数调用D)类的静态数据成员必须进行初始化(22)拷贝构造函数的参数一般是A)某对象名B)某对象成员名C)某对象的引用名D)指向对象的指针名(23)下表正确的是在父类中的访问属性访问修饰符在子类中的访问属性A)publicprivate不能直接访问B)protectpublicpublicC)privatepublic不能直接访问D)protectprivateprotect(24)下面这个程序的结果是#includeclass Aprivate:int a;public:void seta(); int geta();void A:seta() a = 1;int A:geta() return a;class B private:int a;public:void seta(); int geta();void B:seta()a = 2;int B:geta()return a;class C : public A, public B private:int b;public:void display();void C:display() int b = geta();cout , + , * , D) , + , *(26)对于模板定义关键字class和typename说法不正确的是A)程序中的class并不能都替换为typenameB)class和typename都可互相替换C)程序中的typename都能替换为classD)程序中的部分class可以替换为typename(27)对于下面的程序ifstream fin(c:test.txt);if(fin)cout ok;elsecout wrong;对于if语句中的内容可以换为A)fin.fail();B)fin.bad();C)fin.good();D)fin.eof();(28)以下程序的输出结果是#includelong fun( int n) long s;if(n=1|n=2)s=2;else s=n-fun(n-1);return s;void main() cout fun (3); A)1B)2C)3D)4(29)不合法的main函数命令行参数表示形式是A)main(int a,char *c)B)main(int arc,char *arv)C)main(int argc,char *argv)D)main(int argv,char *argc)(30)有如下程序#includevoid main() char ch25=6937,8254,*p2;int i,j,s=0;for(i=0;i2;i+)pi=chi;for(i=0;i0;j+=2)s=10*s+pij-0;cout s;该程序的输出结果是A)69825B)63825C)6385D)693825(31)下面叙述不正确的是A)基类的保护成员在派生类中仍然是保护的成员B)基类的保护成员在公有派生类中仍然是保护的C)基类的保护成员在私有派生类中仍然是私有的D)对基类成员的访问必须是无二义性(32)以下程序的输出结果是#includevoid main() char x=040;cout (x1);A)100B)80C)64D)32(33)下面程序的功能是将从键盘输入的一对数,由小到大排序输出,当输入一对相等数时结束循环,在划线处应填入的选项是#include void main() int a,b,t;cin a b;while() if(ab) t=a;a=b;b=t;cout a b a b; A)!a=bB)a!=bC)a=bD)a=b(34)对以下说明语句的正确理解是int a10=6,7,8,9,10;A)将5个初值依次赋给a1至a5B)将5个初值依次赋给a0至a4C)将5个初值依次赋给a6至a10D)因为数组长度与初值的个数不相同,所以此语句不正确(35)类A是类B的友元,类B是类C的友元,则下列说法正确的是A)类B是类A的友元B)类C是类A的友元C)类A是类C的友元D)以上都不对二、填空题请将每一个空的正确答案写在答题卡序号的横线上,答在试卷上不给分。 (1)长度为n的顺序存储线性表中,当在任何位置上插入一个元素概率都相等时,插入一个元素所需移动元素的平均个数为 1 。 (2)用树型结构表示实体类型及实体间联系的数据模型称为 2 。 (3)类是一个支持集成的抽象数据类型,而对象是类的 3 。 (4)数据流图的类型有 4 和事务型。 (5)当数据的物理结构(存储结构、存取方式等)改变时,不影响数据库的逻辑结构,从而不致引起应用程序的变化,这是指数据的 5 。 (6)在C+语言的面向对象程序设计框架中, 6 是程序的基本组成单元。 (7)C+语言程序的注释可以出现在程序中的任何地方,一个注释以 7 作为开始和结束的标记。 (8)以下程序的输出结果是 8 。#includevoid fun() static int a=0;a+=2;cout a ;void main() int cc;for(cc=1;cc4;cc+)fun();cout endl; (9)用以下语句调用库函数malloc,使字符指针st指向具有11个字节的动态存储空间,请填空。st=(char*) 9 ;(10)以下程序的输出结果是 10 。#includeunsigned fun(unsigned num) unsigned k=1;do k *=num%10;num/=10; while (num);return k; void main() unsigned n=26;cout fun(n),只能用友元函数重载的是。(26)B 解析: 在C+程序中的typename是都可以替换为class 的,但class不能都替换为typename。(27)C 解析: C+语言中判断文件操作成功主要有两个函数good()和fail(),其中if(文件流名good()和if(!文件流名fail(),还有if(文件流名)都可以表示判断文件操作是否成功。 (28)A 解析: 题中fun函数进行了递归调用,第1次调用:fun(3)n=3 s=3-fun(2),第二次调用时:fun(2)n=2 s=2,返回第一次调用后,s=3-2=1。(29)C 解析: 在C+语言里,main函数也可以有参数,例如:main(int arvc,char *argv),argc是指向字符串的指针数组,而选项C)是第二个形参是指向字符变量的指针,是错误的。(30)C 解析: 该题主要要搞清楚以下几点:定义了一个指针数组char *p2后,程序中第一个循环for(i=0;i0是指pij中的字符只要不是字符串结束标志0就继续循环,语句j+=2;是使下标j每次增加2,也即一个隔一个地从pi所指向的字符串中取出字符。经过上述解析后,不难看出,该程序首先从p0所指向的字符串6937中一个隔一个地取出字符,分别是6和3,然后从p1所指向的字符串8254中一个隔一个地取出字符,分别是8和5,同时经过转换和相加运算后,结果s中的值应该是6385。(31)A 解析: C+语言中如果基类的成员是保护的,它被继承后在子类中该成员可能是保护的,也可能不是,主要看继承的权限是public还是protected或private的。(32)C 解析: 左移1位,相当于乘以2,题中的x的值是一个八进制数,转换为十进制数是32,再乘以2,x的值为64。 (33)B 解析: 根据本题提出的条件可知,控制循环的表达式应该是所输入的两数互不相等,也即只有满足这一条件时,两数才能进行排序输出的操作,由此得出循环的控制表达式应该为a!=b。(34)B 解析: 本题中,表达式将5个初值赋给a0至a4,后面的部分,将自动会被依次补零处理。(35)D 解析: 选项A)、B)和C)都不正确,因为友元关系是单项的,并且没有交换性、传递性。二、填空题(1)n/2 解析: 在线性表的任何位置插入一个元素的概率相等,即概率为p=1/(n+1),则插入一个元素时所需移动元素的平均次数为E=1/(n+1)n+1n=1(n-i+1)=n/2。(2)层次模型 解析: 用树型结构表示实体类型及实体间联系的数据模型称为层次模型,用有向图结构表示实体类型及实体间联系的数据模型称为网状模型,用二维表格结构表示实体及其联系的数据模型称为关系模型。(3)实例 解析: 将属性、操作相似的对象归为类,也就是说,类是具有共同属性、共同方法的对象的集合。所以,类是对象的抽象,对象则是其对应类的一个实例。(4)变换型 解析: 典型的数据流类型有两种:变换型和事务型。变换型是指信息沿输入通路进入系统,同时由外部形式变换成内部形式,进入系统的信息通过变换中心,经加工处理以后再沿输出通路变换成外部形式离开软件系统;在很多软件应用中,存在某种作业数据流,它可以引发一个或多个处理,这些处理能够完成该作业要求的功能,这种数据流就叫做事务。(5)物理独立性 解析: 数据独立性是数据与程序间的互不依赖性,即数据库中数据独立于应用程序而不依赖于应用程序。也就是说,数据的逻辑结构、存储结构与存取方式的改变不会影响应用程序。数据独立性一般分为物理独立性与逻辑独立性两级。(6)类 解析: C+语言面向对象程序设计的基本组成单元是class,面向过程的程序设计的基本组成单元是函数。(7)/* */ 解析: C+语言程序的注释可以出现在程序中的任何地方,一个注释以/*开始,以*/为结束。(8)2 4 6 解析: 本题考查静态局部变量的使用。用关键字static声明的局部变量为静态局部变量,其值在函数调用结束后不消失而保留原值,即其占用的存储单元不释放,在下一次该函数调用时,该变

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论