- 论坛徽章:
- 1
|
一年一度的全国计算机等级考试即将拉开大幕,作为2012年3月份全国计算机等级考试的考生,你是否准备好了?对于本次考试你又有多少胜算呢?为了帮助大家更好的准备考试,ChinaUnix技术自测频道特为大家准备了历年全国计算机等级考试试卷及答案解析帮助大家学习和测试,在此也衷心的祝大家考试顺利!
更多全国计算机等级考试试题,请进入CU自测考试认证栏目http://selftest.chinaunix.net/index.aspx?aut=3&sort=-1
试题:
2010年上半年全国等级考试:二级笔试试卷(一)
http://selftest.chinaunix.net/StartQuestion.aspx?questionId=1619
2010年上半年全国等级考试:二级笔试试卷(二)
http://selftest.chinaunix.net/StartQuestion.aspx?questionId=1620
2010年上半年全国等级考试:二级笔试试卷(三)
http://selftest.chinaunix.net/StartQuestion.aspx?questionId=1625
试题答案解析:
2010年上半年全国等级考试:二级笔试试卷(一)
1.【解析】查找的定义是:给定一个值K,在含有n个结点的表中找出关键字等于给定值K的结点。如找到,则查找成功,否则,查找失败。当一个长度为n的有序链表进行查找时,如果该有序链表为逆序,则是最坏情况,需要比较n次。
【答案】A
2.【解析】时间复杂度的相关知识点。
(1)时间频度
一个算法执行所耗费的时间,从理论上是不能算出来的,必须上机运行测试才能知道。但我们不可能也没有必要对每个算法都上机测试,只需知道哪个算法花费的时间多,哪个算法花费的时间少就可以了。并且一个算法花费的时间与算法中语句的执行次数成正比例,哪个算法中语句执行次数多,它花费时间就多。一个算法中的语句执行次数称为语句频度或时间频度,记为T(n)。
(2)时间复杂度
在刚才提到的时间频度中,n称为问题的规模,当n不断变化时,时间频度T(n)也会不断变化。但有时我们想知道它变化时呈现什么规律。为此,我们引入时间复杂度概念。
一般情况下,算法中基本操作重复执行的次数是问题规模n的某个函数,用T(n)表示,若有某个辅助函数f(n),使得当n趋近于无穷大时,T(n)/f(n)的极限值为不等于零的常数,则称f(n)是T(n)的同数量级函数。记作T(n)=O(f(n)),称O(f(n)) 为算法的渐进时间复杂度,简称时间复杂度。
在各种不同算法中,若算法中语句执行次数为一个常数,则时间复杂度为O(1),另外,在时间频度不相同时,时间复杂度有可能相同,如,T(n)=n2+3n+4与T(n)=4n2+2n+1它们的频度不同,但时间复杂度相同,都为O(n2)。
按数量级递增排列,常见的时间复杂度有:
常数阶O(1),对数阶O(log2n),线性阶O(n),线性对数阶O(nlog2n),平方阶O(n2),立方阶O(n3), ...,k次方阶O(nk),指数阶O(2n)。随着问题规模n的不断增大,上述时间复杂度不断增大,算法的执行效率越低。
因此算法的时间复杂度指的就是算法在执行过程中所需要的基本运算次数。
【答案】D
3.【解析】软件按功能可以分为:应用软件、系统软件和支撑软件(或工具软件)。其中系统软件是指控制和协调计算机及外部设备,支持应用的软件开发和运行的系统,是无需用户干预的各种程序的集合,主要功能是调度,监控和维护计算机系统;负责管理计算机系统中各种独立的硬件,使得它们可以协调工作。系统软件使得计算机使用者和其他软件将计算机当作一个整体而不需要顾及到底层每个硬件是如何工作的。
系统软件主要包括:操作系统,语言处理程序,高级语言系统和各种服务性程序等。
其中:操作系统如,我们常用的Windows,Linux,DOS,UNIX等。
语言处理程序如汇编语言汇编器,C语言编译、连接器等。
一般来讲,系统软件包括操作系统和一系列基本的工具(比如编译器,数据库管理,存储器格式化,文件系统管理,用户身份验证,驱动管理,网络连接等方面的工具)。是支持计算机系统正常运行并实现用户操作的那部分软件。
【答案】B
4.【解析】所谓软件(程序)调试,是将编制的程序投入实际运行前,用手工或编译程序等方法进行测试,修正语法错误和逻辑错误的过程,这是保证计算机信息系统正确性的必不可少的步骤。编完计算机程序,必须送入计算机中测试。
软件(程序)调试分以下几步进行:
第一步,用编辑程序把编制的源程序按照一定的书写格式送到计算机中,编辑程序会根据使用人员的意图对源程序进行增、删或修改。
第二步,把送入的源程序翻译成机器语言,即用编译程序对源程序进行语法检查并将符合语法规则的源程序语句翻译成计算机能识别的“语言”。如果经编译程序检查,发现有语法错误,那就必须用编辑程序来修改源程序中的语法错误,然后再编译,直至没有语法错误为止。
第三步,使用计算机中的连接程序,把翻译好的计算机语言程序连接起来,并扶植成一个计算机能真正运行的程序。在连接过程中,一般不会出现连接错误,如果出现了连接错误,说明源程序中存在子程序的调用混乱或参数传递错误等问题。这时又要用编辑程序对源程序进行修改,再进行编译和连接,如此反复进行,直至没有连接错误为止。
第四步,将修改后的程序进行试算,这时可以假设几个模拟数据去试运行,并把输出结果与手工处理的正确结果相比较。如有差异,就表明计算机的程序存在有逻辑错误。如果程序不大,可以用人工方法去模拟计算机对源程序的这几个数据进行修改处理;如果程序比较大,人工模拟显然行不通,这时只能将计算机设置成单步执行的方式,一步步跟踪程序的运行。一旦找到问题所在,仍然要用编辑程序来修改源程序,接着仍要编译、连接和执行,直至无逻辑错误为止,也可以在完成后再进行编译。
由此可知软件(程序)调试的任务是诊断和改正程序中的错误。
【答案】A
5.【解析】结构化分析是面向数据流进行需求分析的方法,其常用的工具有数据流图、数据字典、判定树、判定表。
数据流程图(DFD图)是描述系统数据流程的工具,它将数据独立抽象出来,通过图形方式描述信息的来龙去脉和实际流程。
为了描述复杂的软件系统的信息流向和加工,可采用分层的DFD来描述,分层DFD有顶层,中间层、底层之分。
(1)顶层。决定系统的范围,决定输入输出数据流,它说明系统的边界,把整个系统的功能抽象为一个加工,顶层DFD只有一张。
(2)中间层。顶层之下是若干中间层,某一中间层既是它上一层加工的分解结果,又是它下一层若干加工的抽象,即它又可进一步分解。
(3)底层。若一张DFD的加工不能进一步分解,这张DFD就是底层的了。底层DFD的加工是由基本加工构成的,所谓基本加工是指不能再进行分解的加工。
【答案】C
6.【解析】软件生命周期可分为定义阶段、开发阶段和维护阶段。
详细设计的主要任务是设计每个模块的实现算法、所需的局部数据结构。详细设计的目标有两个:实现模块功能的算法要逻辑上正确和算法描述要简明易懂。传统软件开发方法的详细设计主要是用结构化程序设计法。详细设计的表示工具有图形工具和语言工具。图形工具有程序流程图、PAD(Problem Analysis Diagram)图、N-S(由Nassi和Shneidermen开发,简称N-S)图。语言工具有伪码和PDL(Program Design Language)等。
主要任务:
(1)为每个模块确定采用的算法,选择某种适当的工具表达算法的过程,写出模块的详细过程性描述。
(2)确定每一模块使用的数据结构。
(3)确定模块接口的细节,包括对系统外部的接口和用户界面,对系统内部其它模块的接口,以及模块输入数据、输出数据及局部数据的全部细节。在详细设计结束时,应该把上述结果写入详细设计说明书,并且通过复审形成正式文档,交付给下一阶段(编码阶段)的工作依据。
(4)要为每一个模块设计出一组测试用例,以便在编码阶段对模块代码(即程序)进行预定的测试,模块的测试用例是软件测试计划的重要组成部分,通常应包括输入数据,期望输出等内容。
由此可以得出,详细设计属于软件生命周期中的开发阶段。
【答案】B
7.【解析】数据库管理系统包括数据定义、数据管理、数据操纵和数据控制4大功能。
(1)数据定义语言Data Definition Language , DDL通常是数据库管理系统的一部分,用于定义数据库的所有特性和属性,尤其是行布局、列定义、键列(有时是选键方法)、文件位置和存储策略。
(2)没有数据管理语言。
(3)数据操纵语言DML(Data Manipulation Language),用户通过它可以实现对数据库的基本操作。例如,对表中数据的查询、插入、删除和修改。
在DML中,应用程序可以对数据库作插、删、改、排、检5种操作:
插操作:把数据插入到数据库中指定的位置上去,如,Append是在数据库文件的末尾添加记录,而INSERT是在指定记录前添加记录。
删操作:删除数据库中不必再继续保留的一组记录,如,DELETE对数据库中记录作删除标志。PACK是将标有删除标志的记录彻底清除掉。ZAP是去掉数据库文件的所有记录。
改操作:修改记录或数据库模式,或在原有数据的基础上,产生新的关系模式和记录,如,连接Join操作和投影操作Projection。
排序操作:改变物理存储的排列方式。如,SORT命令按指定关键字串把DBF文件中记录排序。从物理存储的观点看,数据库发生了变化,但从逻辑的观点(或集合论观点看),新的关系与排序前是等价的。
检索操作:从数据库中检索出满足条件的数据,它可以是一个数据项,一个记录或一组记录。如,BROWSE单元实现对数据的浏览操作,SELECT选出满足一定条件和范围的记录。
(4)数据控制语言(DCL)是用来设置或者更改数据库用户或角色权限的语句,这些语句包括GRANT、DENY、REVOKE等语句,在默认状态下,只有sysadmin、Dbcreato、db_owner或db_securityadmin等角色的成员才有权利执行数据控制语言。
【答案】A
8.【解析】关系数据库:是建立在关系数据库模型基础上的数据库,借助与集合代数等概念和方法来处理数据库中的数据。关系数据库中的关系也是一个二维表,表的每行对应一个元组,表的每列对应一个属性,一个学生信息应该是整个学生表中的某一行,即一个元组,也就是一条记录。
【答案】D
9.【解析】数据库设计(Database Design)是指根据用户的需求,在某一具体的数据库管理系统上,设计数据库的结构和建立数据库的过程。就是规划和结构化数据库中的数据对象以及这些数据对象之间关系的过程。
一般,数据库的设计过程大致可分为6个步骤:
(1)需求分析。调查和分析用户的业务活动和数据的使用情况,弄清所用数据的种类、范围、数量,以及它们在业务活动中交流的情况,确定用户对数据库系统的使用要求和各种约束条件等,形成用户需求规约。
(2)概念设计。对用户要求描述的现实世界(可能是一个工厂、一个商场或者一个学校等),通过对其中住处的分类、聚集和概括,建立抽象的概念数据模型。这个概念模型应反映现实世界各部门的信息结构、信息流动情况、信息间的互相制约关系及各部门对信息储存、查询和加工的要求等。所建立的模型应避开数据库在计算机上的具体实现细节,用一种抽象的形式表示出来。以扩充的实体—联系模型(E-R模型)方法为例,第一步先明确现实世界各部门所含的各种实体及其属性、实体间的联系及对信息的制约条件等,从而给出各部门内所用信息的局部描述(在数据库中称为用户的局部视图)。第二步再将前面得到的多个用户的局部视图集成为一个全局视图,即用户要描述的现实世界的概念数据模型。
(3)逻辑设计。主要工作是将现实世界的概念数据模型设计成数据库的一种逻辑模式,即适应于某种特定数据库管理系统所支持的逻辑数据模式。与此同时,可能还需为各种数据处理应用领域产生相应的逻辑子模式。这一步设计的结果就是所谓“逻辑数据库”,是结构和行为分离的设计。
(4)物理设计。根据特定数据库管理系统所提供的多种存储结构和存取方法等依赖于具体计算机结构的各项物理设计措施,对具体的应用任务选定最合适的物理存储结构(包括文件类型、索引结构和数据的存放次序与位逻辑等)、存取方法和存取路径等。这一步设计的结果就是所谓“物理数据库”。
(5)验证设计。在上述设计的基础上,通过收集数据并具体建立一个数据库,运行一些典型的应用任务来验证数据库设计的正确性和合理性。一般,一个大型数据库的设计过程往往需要经过多次循环反复。当设计的某步发现问题时,可能就需要返回到前面去进行修改。因此,在做上述数据库设计时就应考虑到今后修改设计的可能性和方便性。
(6)运行与维护设计。在数据库系统正式投入运行的过程中,必须不断地对其进行设计过程各个阶段的设计描述评调整与修改。
由此可以得知数据库设计中,用E-R图来描述信息结构但不涉及信息在计算机中的表示,它属于数据库设计的概念设计阶段。
【答案】C
10.【解析】专门的关系运算有选择、投影、联接等。
(1)选择运算是从关系中找出满足给定条件的那些元组称为选择。其中的条件是以逻辑表达式给出的,值为真的元组将被选取。这种运算是从水平方向抽取元组。在Visual FoxPro中的短语FOR<条件>和WHILE<条件>均相当于选择运算。
(2)投影运算是从关系模式中挑选若干属性组成新的关系称为投影。这是从列的角度进行的运算,相当于对关系进行垂直分解。
(3)联接运算,选择和投影运算都是属于一目运算,它们的操作对象只是一个关系。联接运算是二目运算,需要两个关系作为操作对象。联接是将两个关系模式通过公共的属性名拼接成一个更宽的关系模式,生成的新关系中包含满足联接条件的元组。
本题中关系S中的记录明显是关系R中的第3条和第4条记录,而选择运算是从关系中找出满足给定条件的那些元组。
【答案】A
2010年上半年全国等级考试:二级笔试试卷(二)
1.【解析】程序文件的扩展名是PRG;可执行文件的扩展名是EXE;数据库文件的扩展名是DBC;编译后程序的扩展名是FXP。
【答案】D
2.【解析】选项A中的命令是修改当前所使用的表的结构;选项B中的命令是修改文件名为TEST的程序文件;选项C、D中的命令在Visual FoxPro中是没有的。
【答案】A
3.【解析】在Visual FoxPro中,修改表记录的命令是replace,替换记录命令。排除选项A、C。
其格式是:REPLACE [范围] 字段名 WTTH 表达式 [FOR条件]。注意如果没有规定范围词的话,那么该命令修改的就当前指针指向的这一条记录,不是所有的学生记录。所有记录的范围词是ALL。
【答案】D
14.【解析】在客观世界中的任何实体都可以堪称对象,对象可以是具体物体,也可以是某些概念。属性用来表示对象的状态;方法用来描述对象的行为;事件是一种有系统预先定义而由用户或系统发出的动作,事件代码也可以象方法一样被显示调用;类是对一类相似对象性质的描述。同类对象具有相同的性质,即相同的属性及方法。这些对象虽然采用相同的属性及表示状态,但它们属性的值完全可以不相同,这些对象一般有着不同的状态,且彼此间相对独立。
【答案】D
5.【解析】本题考查的是字符函数中AT(),RIGHT(),LEFT()等函数的用法。
(1)AT函数返回的结果是是数字(如字符1是字符2的子串,结果是字符1首字符在字符2中的位置,否则返回0)。
(2)RIGHT函数的结果是从参数1的右端取参数2指定的长度的子串。
(3)LEFT函数的结果是从参数1的左端取参数2指定的长度的子串。
一个汉字的长度是2。
【答案】D
6.【解析】数据库管理系统(Database Management System)是一种操纵和管理数据库的大型软件,是用于建立、使用和维护数据库,简称DBMS。它对数据库进行统一的管理和控制,以保证数据库的安全性和完整性。用户通过DBMS访问数据库中的数据,数据库管理员也通过DBMS进行数据库的维护工作。它提供多种功能,可使多个应用程序和用户用不同的方法在同时或不同时刻去建立、修改和询问数据库。它使用户能方便地定义和操纵数据,维护数据的安全性和完整性,以及进行多用户下的并发控制和恢复数据库。
而关系数据库管理系统指的是该数据库管理系统中管理的基本对象是关系(表)。Visual FoxPro就是一个关系数据库管理系统,所以在Visual FoxPro中关系就是指的二维表。
【答案】B
7.【解析】本题的考点是EMPTY(),LIKE(),AT(),ISNULL()函数的用法。
ISNULL(<表达式>)其功能是判断表达式运算结果是否为NULL。
EMPTY(<表达式>)其功能是判断表达式运算结果是否为“空”值在这里的“空”值与NULL是两个不同的概念。不同类型数据的“空”有不同的规定。
AT(<字符表达式1>, <字符表达式2>)函数,如,字符1是字符2的子串,结果是字符1首字符在字符2中的位置,否则返回0,其结果是数值,直接排除。
LIKE(<字符表达式1>, <字符表达式2>)函数判断两个字符串是否相匹配,其中字符串1中可以包含“*”和“?”,其中“*”表示任意多个任意的字符,“?”表示任意的一个字符。
【答案】B
8.【解析】视图是存在于数据库中的一个虚表,不以独立的文件形式保存;视图中的数据是可以更改的,它不仅具有查询的功能,且可以把更新结果反映到源数据表中;视图打开时,其基表自动打开,但视图关闭时,其基表并不随之自动关闭;视图的数据源可以是自由表、数据库表或另一个视图;视图是可以删除的。
由上述知识点可以得知,视图始终不真正含有数据,且不能独立存在,必须依附数据库,其定义保存在数据库中。
【答案】B
9.【解析】Visual FoxPro中一个关系就是一张二维表,通常将一个没有重复行,重复列的二维表看成一个关系,每个关系都有一个关系名。在Visual FoxPro中,一个关系对应于一个表文件,其扩展名为.dbf。
(1)元组
二维表的每一行在关系中称为元组。在Visual FoxPro中,一个元组对应表中一个记录。
(2)属性
二维表的每一列在关系中称为属性,每个属性都有一个属性名,属性值则是各元组属性的取值。在Visual FoxPro中,一个属性对应表中一个字段,属性名对应字段名,属性值对应于各个记录的字段值。
(3)域
属性的取值范围称为域。域作为属性值的集合,其类型与范围由属性的性质及其所表示的意义具体确定,同一属性只能在相同域中取值。
(4)关键字
关系中能唯一区分、确定不同元组的属性或属性组合,称为该关系的一个关键字。单个属性组成的关键字称为单关键字,多个属性组合的关键字称为组合关键字。需要强调的是,关键字的属性值不能取“空值”。所谓空值就是“不知道”或“不确定”的值,因而空值无法唯一地区分、确定元组。
(5)候选关键字
关系中能够成为关键字的属性或属性组合可能不是唯一的。凡在关系中能够唯一区分、确定不同元组的属性或属性组合,称为候选关键字。
(6)主关键字
在候选关键字中选定一个作为关键字,称为该关系的主关键字。关系中主关键字是唯一的。
(7)外部关键字
关系中某个属性或属性组合并非关键字,但却是另一个关系的主关键字,称此属性或属性组合为本关系的外部关键字。关系之间的联系是通过外部关键字实现的。
有上述知识点可以得知行、列和关键字次序都是无关紧要的。
【答案】C
10.【解析】报表是vfp中的一种数据组织形式,我们通常利用报表把从数据库表中提取出的数据打印出来。报表的数据源通常可以是数据表和自由表,也可以是视图、查询和临时表。
【答案】C
|
|