1、国家二级(VF)机试-试卷 3 及答案解析(总分:86.00,做题时间:90 分钟)一、选择题(总题数:40,分数:80.00)1.线性表若采用链式存储结构时,要求内存中可用存储单元的地址(分数:2.00)A.必须是连续的B.部分地址必须是连续的C.一定是不连续的D.连续不连续都可以2.在待排序的元素序列基本有序的前提下,效率最高的排序方法是(分数:2.00)A.冒泡排序B.选择排序C.快速排序D.归并排序3.下列叙述中,错误的是(分数:2.00)A.数据的存储结构与数据处理的效率密切相关B.数据的存储结构与数据处理的效率无关C.数据的存储结构在计算机中所占的空间不一定是连续的D.一种数据的逻
2、辑结构可以有多种存储结构4.希尔排序属于(分数:2.00)A.交换排序B.归并排序C.选择排序D.插入排序5.下列叙述中,不属于结构化分析方法的是(分数:2.00)A.面向数据流的结构化分析方法B.面向数据结构的 Jackson 方法C.面向数据结构的结构化数据系统开发方法D.面向对象的分析方法6.详细设计的结果基本决定了最终程序的(分数:2.00)A.代码的规模B.运行速度C.质量D.可维护性7.下列不属于静态测试方法的是(分数:2.00)A.代码检查B.白盒法C.静态结构分析D.代码质量度量8.公司中有多个部门和多名职员,每个职员只能属于一个部门,一个部门可以有多名职员,从职员到部门的联系
3、类型是(分数:2.00)A.多对多B.一对一C.多对一D.一对多9.下列关系运算的叙述中,正确的是(分数:2.00)A.投影、选择、连接是从二维表行的方向进行的运算B.并、交、差是从二维表的列的方向来进行运算C.投影、选择、连接是从二维表列的方向进行的运算D.以上 3 种说法都不对10.关系数据库管理系统应能实现的专门的关系运算包括(分数:2.00)A.排序、索引、统计B.选择、投影、连接C.关联、更新、排序D.显示、打印、制表11.在文件系统阶段,操作系统管理数据的基本单位是(分数:2.00)A.记录B.程序C.数据项D.文件12.Visual FoxPro 提供的各种设计器中,可以用来定义
4、表单或报表中使用的数据源的是(分数:2.00)A.表单设计器B.报表设计器C.数据环境设计器D.数据库设计器13.在 Visual FoxPro 中,可以在同类数据之间进行“-”运算的数据类型有(分数:2.00)A.数值型、字符型和逻辑型B.数值型、字符型和日期型C.数值型、日期型和逻辑型D.字符型、日期型和逻辑型14.下列关于数组的叙述中,错误的是(分数:2.00)A.用 DIMENSION 和 DECLARE 都可以定义数组B.Visual FoxPro 中只支持一维数组和二维数组C.一个数组中各个数组元素必须是同一种数据类型D.新定义数组的各个数组元素初值为.F.15.下列表达式中,写法
5、错误的是(分数:2.00)A.计算机+“123“B.计算机+DTOC(2004/01/01)C.T+FD.2004/01/01+1016.在“数据工作期”窗口中,“一对多”按钮的作用是(分数:2.00)A.一个表与多个表建立关联B.父表中的一条记录与子表中的多条记录建立关联C.父表中的一条记录与子表中的一条记录建立关联D.多个表与当前表建立关联17.表结构中的空值(NULL)表示的含义是(分数:2.00)A.空格B.数值 0C.默认值D.尚未输入的值18.要控制两个表中数据的完整性和一致性,可以设置参照完整性,要求这两个表(分数:2.00)A.是同一个数据库中的两个表B.是不同数据库中的两个表
6、C.是两个自由表D.一个数据库表,另一个是自由表19.不论索引是否生效,定位到相同记录上的命令是(分数:2.00)A.GOTOPB.GO BOTTOMC.SKIPD.GO 520.数据表当前记录的“基本工资”字段值为 500,执行以下命令: REPLACE 基本工资 WITH 基本工资*12 当前记录的基本工资字段值为(分数:2.00)A.1.2B.500C.600D.语法错误21.在 Visual FoxPro 某数据表中有一个数值型字段,要求有 4 位整数,2 为小数,其值可能为负值,它的宽度应为(分数:2.00)A.6B.7C.8D.922.对数据表的记录做相同规律的修改时,最方便的是使
7、用(分数:2.00)A.EDITB.BROWSEC.REPLACED.CHANGE23.在 SQL 中,建立索引的命令是(分数:2.00)A.CREATE TABLEB.CREATE INDEXC.CREATE VIEWD.INDEX ON24.对于查询输出到临时表中的叙述,下列说法错误的是(分数:2.00)A.产生的临时表文件的后缀名仍为dbfB.执行查询后,该临时表文件是当前文件C.可以像一般的 dbf 文件一样使用,可查询和修改表中记录D.当关闭文件时,临时表文件将自动被删除25.SQL 语句中,DISTINCT 短语的功能是(分数:2.00)A.按要求显示部分查询记录B.消除重复出现的
8、查询记录C.删除查询结果中符合条件的记录D.对查询结果进行排序26.下列关于查询的说法,正确的是(分数:2.00)A.不能根据自由表建立查询B.只能根据自由表建立查询C.只能根据视图建立查询D.可以根据数据库表、自由表或视图建立查询27.视图设计器中,共提供选项卡的个数是(分数:2.00)A.5B.6C.7D.828.下列对调试器的叙述中,正确的是(分数:2.00)A.“跟踪”窗口用于显示正在执行的程序文件B.“监视”窗口用于显示表达式以及它们当前的值,并可以在一个表达式上设置断点C.“局部”窗口用于显示当前程序、过程或方法程序中可见的变量、数组、对象以及对象成员D.“调试输出”窗口用于显示程
9、序中指定调试的输出29.下列程序实现的功能是 USE 学生表 DO WHILE NOT EOF( ) IF 计算机=60 SKIP LOOP ENDIF DISPLAY SKIP ENDDO USE(分数:2.00)A.显示所有计算机成绩大于等于 60 的学生记录B.显示所有计算机成绩小于 60 的学生记录C.显示第一条计算机成绩大于等于 60 的学生记录D.显示第一条计算机成绩小于 60 的学生记录30.表单控件工具栏的作用是在表单上创建(分数:2.00)A.文本B.事件C.控件D.方法31.下面表单及控件常用事件中,与鼠标操作有关的是(分数:2.00)A.ClickB.DbClickC.R
10、ightClickD.以上 3 项都是32.有“仓库”表和“职工”表,检索仓库中基本工资大于 3000 元的职工姓名和他们所在的仓库名(分数:2.00)A.SELECT 姓名,仓库名 FROM 职工; WHERE 基本工资3000B.SELECT 姓名,仓库名 FROM 仓库; WHERE 基本工资3000C.SELECT 姓名,仓库名 FROM 职工,仓库; WHERE(基本工资3000)OR(职工仓库号=仓库仓库号)D.SELECT 姓名,仓库名 FROM 职工,仓库; WHERE(基本工资3000)AND(职工仓库号=仓库仓库号)33.若进栈序列为 1,2,3,4,进栈过程中可以出栈,则
11、下列不可能的一个出栈序列是 ( )。(分数:2.00)A.1,4,3,2B.2,3,4,1C.3,1,4,2D.3,4,2,134.排序方法中,将整个无序序列分割成若干小的子序列并分别进行插入排序的方法,称为 ( )。(分数:2.00)A.希尔排序B.冒泡排序C.插入排序D.选择排序35.在顺序表(3,6,8,10,12,15,16,18,21,25,30)中,用二分法查找关键码值 11,所需的关键码比较次数为 ( )。(分数:2.00)A.2B.3C.4D.536.对于 n 个结点的单向链表(无表头结点),需要指针单元的个数至少为 ( )。(分数:2.00)A.n-1B.nC.n+1D.2n
12、37.在软件开发过程中,软件结构设计是描述 ( )。(分数:2.00)A.数据存储结构B.软件体系结构C.软件结构测试D.软件控制过程38.模块本身的内聚是模块独立性的重要性度量因素之一。在 7 类内聚中,具有最强内聚的一类是 ( )。(分数:2.00)A.顺序性内聚B.过程性内聚C.逻辑性内聚D.功能性内聚39.数据存储和数据流都是 ( ),仅仅是所处的状态不同。(分数:2.00)A.分析结果B.事件C.动作D.数据40.数据的完整性是指数据的正确性、有效性和 ( )。(分数:2.00)A.可维护性B.独立性C.安全性D.相容性二、基本操作题(总题数:1,分数:2.00)41.在考生文件夹下
13、已有表单文件 formtest.scx,其中包含一个文本框、一个表格和两个命令按钮。请按下面要求完成相应的操作: 通过“属性”窗口,将文本框 Text1 的 Value 属性值设置为当前系统日期(日期型,不含时间)。 通过“属性”窗口,将表格 Grid1 的 RecordResourceType 属性值设置为“4-SQL 说明”。 修改“确定”按钮的 Click 事件代码。当单击该按钮时,表格 Grid1 内将显示指定日期以后(含)签订的订单信息(包括“订单号”、“订购日期”和“总金额”信息)。 设置“退出”按钮的Click 事件代码。当单击该按钮时,将释放并关闭表单。(分数:2.00)_三、
14、简单应用题(总题数:1,分数:2.00)42.建立表单 my,表单含有两个按钮,标题分别为“确定”和“退出”。单击“确定”,弹出对话框显示“你好!”;单击“关闭”,关闭表单。(分数:2.00)_四、综合应用题(总题数:1,分数:2.00)43.现有数据库 hospital,包括 3 个表文件:doctor.dbf(医生)、medicine.dbf(药品)和formula.dbf。(处方)。设计一个名为 cx 的菜单,菜单中有两个菜单项:“查询”和“退出”。 程序运行时,单击“查询”应完成下列操作:查询同一处方中,包含“感冒”两个字的药品的处方号、药名和生产厂,以及医生的姓名和年龄,把查询结果按
15、处方号升序排序存入 result 表中。result 的结构为(姓名,年龄,处方号,药名,生产厂)。 单击“退出”菜单项,程序终止运行。(注:相关资料表文件存在于考生文件夹下。)(分数:2.00)_国家二级(VF)机试-试卷 3 答案解析(总分:86.00,做题时间:90 分钟)一、选择题(总题数:40,分数:80.00)1.线性表若采用链式存储结构时,要求内存中可用存储单元的地址(分数:2.00)A.必须是连续的B.部分地址必须是连续的C.一定是不连续的D.连续不连续都可以 解析:解析:在链式存储结构中,存储数据结构的存储空间可以是连续的,也可以是不连续的,各数据结点的存储顺序与数据元素之间
16、的逻辑关系可以不一致。2.在待排序的元素序列基本有序的前提下,效率最高的排序方法是(分数:2.00)A.冒泡排序 B.选择排序C.快速排序D.归并排序解析:解析:从平均时间性能而言,快速排序最佳,其所需时间最少,但快速排序在最坏情况下的时间性能不如堆排序和归并排序。当序列中的记录基本有序或元素个数较少时,冒泡排序和简单选择排序为最佳排序方法,故本题答案应该为选项 A。3.下列叙述中,错误的是(分数:2.00)A.数据的存储结构与数据处理的效率密切相关B.数据的存储结构与数据处理的效率无关 C.数据的存储结构在计算机中所占的空间不一定是连续的D.一种数据的逻辑结构可以有多种存储结构解析:解析:一
17、般来说,一种数据结构根据需要可以表示成多种存储结构。常用的存储结构有顺序、链接、索引等,而采用不同的存储结构,其数据处理的效率是不同的;一个数据结构中的各数据元素在计算机存储空间中的位置关系与逻辑关系是有可能不同的。4.希尔排序属于(分数:2.00)A.交换排序B.归并排序C.选择排序D.插入排序 解析:解析:希尔排序的基本思想是把记录按下标的一定增量分组,对每组记录使用插入排序,随增量的逐渐减小,所分成的组包含的记录越来越多,到增量的值减小到 1 时,整个数据合成一组,构成一组有序记录,故其属于插入排序方法。5.下列叙述中,不属于结构化分析方法的是(分数:2.00)A.面向数据流的结构化分析
18、方法B.面向数据结构的 Jackson 方法C.面向数据结构的结构化数据系统开发方法D.面向对象的分析方法 解析:解析:常见的需求分析方法有结构化分析方法和面向对象的分析方法两类。其中结构化分析方法又包括面向数据流的结构化分析方法(SA-Structured analysis),面向数据结构的 Jackson 方法(JSD-Jackson system development method)和面向数据结构的结构化数据系统开发方法(DSSD-Data structured system development method)。6.详细设计的结果基本决定了最终程序的(分数:2.00)A.代码的规模
19、B.运行速度C.质量 D.可维护性解析:解析:详细设计阶段的根本目标是确定应该怎样具体的实现所要求的系统,但详细设计阶段的任务还不是具体的编写程序,而是要设计出程序的“蓝图”,以后程序员将根据这个蓝图写出实际的程序代码,因此,详细设计阶段的结果基本上就决定了最终的程序代码的质量。7.下列不属于静态测试方法的是(分数:2.00)A.代码检查B.白盒法 C.静态结构分析D.代码质量度量解析:解析:静态测试包括代码检查、静态结构分析和代码质量度量等。其中白盒测试属于动态测试。8.公司中有多个部门和多名职员,每个职员只能属于一个部门,一个部门可以有多名职员,从职员到部门的联系类型是(分数:2.00)A
20、.多对多B.一对一C.多对一 D.一对多解析:解析:现实世界中事物之间的联系在信息世界中反映为实体集之间的联系,实体集间的联系个数不仅可以是单个的也可以是多个的,这种关系可以有下面几种对应:一对一、一对多(多对一)多对多。9.下列关系运算的叙述中,正确的是(分数:2.00)A.投影、选择、连接是从二维表行的方向进行的运算B.并、交、差是从二维表的列的方向来进行运算C.投影、选择、连接是从二维表列的方向进行的运算 D.以上 3 种说法都不对解析:解析:在关系模型的数据语言中,一般除了运用常规的集合运算(并、交、差、笛卡尔积等),还定义了一些专门的关系运算,如投影、选择、连接等。前者是将关系(即二
21、维表)看成是元组的集合,这些运算主要是从二维表的行的方向来进行的。后者是从二维表的列的方向来进行运算的。10.关系数据库管理系统应能实现的专门的关系运算包括(分数:2.00)A.排序、索引、统计B.选择、投影、连接 C.关联、更新、排序D.显示、打印、制表解析:解析:关系数据库建立在关系数据模型基础上,具有严格的数学理论基础。关系数据库对数据的操作除了包括集合代数的并、差等运算之外,更定义了一组专门的关系运算:连接、选择和投影。关系运算的特点是运算的对象都是表。11.在文件系统阶段,操作系统管理数据的基本单位是(分数:2.00)A.记录B.程序C.数据项D.文件 解析:解析:文件管理方式本质上
22、是把数据组织成文件形式存储在磁盘上,所以文件是操作系统管理数据的基本单位。12.Visual FoxPro 提供的各种设计器中,可以用来定义表单或报表中使用的数据源的是(分数:2.00)A.表单设计器B.报表设计器C.数据环境设计器 D.数据库设计器解析:解析:数据环境设计器用于定义表单或报表中使用的数据源,包括表、视图等。13.在 Visual FoxPro 中,可以在同类数据之间进行“-”运算的数据类型有(分数:2.00)A.数值型、字符型和逻辑型B.数值型、字符型和日期型 C.数值型、日期型和逻辑型D.字符型、日期型和逻辑型解析:解析:两个数值型数据相减,用其值直接相减;两个字符型数据相
23、减,实际上是两个字符串的非完全连接;两个日期型数据相减是计算两个日期之间的相差天数;而逻辑型数据是不允许相减的,逻辑型数据之间可以比较大小。14.下列关于数组的叙述中,错误的是(分数:2.00)A.用 DIMENSION 和 DECLARE 都可以定义数组B.Visual FoxPro 中只支持一维数组和二维数组C.一个数组中各个数组元素必须是同一种数据类型 D.新定义数组的各个数组元素初值为.F.解析:解析:在 Visual FoxPro 中,用 DIMENSION 和 DECLARE 都可以定义数组,新定义数组的各个数组元素初值为.F.,且 Visual FoxPro 中只支持一维数组和二
24、维数组,数组中元素的数据类型可以不同。15.下列表达式中,写法错误的是(分数:2.00)A.计算机+“123“B.计算机+DTOC(2004/01/01)C.T+F D.2004/01/01+10解析:解析:选项 A)和 B)都是将两个字符串相加,即连接,结果为新的字符串,选项 D)为日期型+数值型,结果仍为日期型,选项 C)为两个逻辑常量相加,在 Visual FoxPro 中,无此类运算。16.在“数据工作期”窗口中,“一对多”按钮的作用是(分数:2.00)A.一个表与多个表建立关联B.父表中的一条记录与子表中的多条记录建立关联 C.父表中的一条记录与子表中的一条记录建立关联D.多个表与当
25、前表建立关联解析:解析:在“数据工作期”窗口中,“一对多”按钮,用来实现父表中的一条记录与子表中的多条记录建立关联。17.表结构中的空值(NULL)表示的含义是(分数:2.00)A.空格B.数值 0C.默认值D.尚未输入的值 解析:解析:空值(NULL)是指尚未输入的值或还没有确定的值。18.要控制两个表中数据的完整性和一致性,可以设置参照完整性,要求这两个表(分数:2.00)A.是同一个数据库中的两个表 B.是不同数据库中的两个表C.是两个自由表D.一个数据库表,另一个是自由表解析:解析:设置参照完整性必须在数据库中完成,因此要求这两个数据表必须在同一个数据库中。19.不论索引是否生效,定位
26、到相同记录上的命令是(分数:2.00)A.GOTOPB.GO BOTTOMC.SKIPD.GO 5 解析:解析:GO 是按记录号进行定位的,无论表中记录如何改变,记录号是不变的;GO TOP 和 GO BOTTOM 分别指向表中第一条和最后一条记录,当表中建立索引时,记录的次序会随之改变;SKIP 为向下移动一条记录。20.数据表当前记录的“基本工资”字段值为 500,执行以下命令: REPLACE 基本工资 WITH 基本工资*12 当前记录的基本工资字段值为(分数:2.00)A.1.2B.500C.600 D.语法错误解析:解析:不带参数的 REPLACE 语句,默认修改当前指针所指的记录
27、。本题中,修改当前记录的基本工资字段的值为原来的 1.2 倍,即 500*1.2=600。21.在 Visual FoxPro 某数据表中有一个数值型字段,要求有 4 位整数,2 为小数,其值可能为负值,它的宽度应为(分数:2.00)A.6B.7C.8 D.9解析:解析:本题中,数值型字段的整数位为 4,小数位为 2,再加上 1 个小数点位,占 1 个字节,和 1个符号位,占 1 个字符,实际宽度应为 8。22.对数据表的记录做相同规律的修改时,最方便的是使用(分数:2.00)A.EDITB.BROWSEC.REPLACE D.CHANGE解析:解析:EDIT、BROWSE 和 CHANGE
28、命令都可对记录进行修改编辑,但只能在交互式环境或浏览窗口进行逐条修改,对数据表中记录做相同规律的修改时,可使用 REPLACE 命令直接修改。23.在 SQL 中,建立索引的命令是(分数:2.00)A.CREATE TABLEB.CREATE INDEX C.CREATE VIEWD.INDEX ON解析:解析:SQL 定义功能中,利用 CREATE INDEX 命令可以建立表的索引,选项 A)定义一个新表,选项C)定义一个视图,选项 D)可以为表建立索引,但不属于 SQL 语句。24.对于查询输出到临时表中的叙述,下列说法错误的是(分数:2.00)A.产生的临时表文件的后缀名仍为dbfB.执
29、行查询后,该临时表文件是当前文件C.可以像一般的 dbf 文件一样使用,可查询和修改表中记录 D.当关闭文件时,临时表文件将自动被删除解析:解析:查询输出到临时表中,产生的临时表文件的后缀名仍为dbf,且该临时表文件是当前文件,可以像一般的 dbf 文件一样使用,但仅是只读文件,当关闭文件时,临时表文件将自动被删除。25.SQL 语句中,DISTINCT 短语的功能是(分数:2.00)A.按要求显示部分查询记录B.消除重复出现的查询记录 C.删除查询结果中符合条件的记录D.对查询结果进行排序解析:解析:利用 DISTINCT 短语可消除查询结果中重复出现的记录值。26.下列关于查询的说法,正确
30、的是(分数:2.00)A.不能根据自由表建立查询B.只能根据自由表建立查询C.只能根据视图建立查询D.可以根据数据库表、自由表或视图建立查询 解析:解析:建立查询时,会打开“添加表或视图”的对话框,用来指定建立查询的数据源,数据源可以是自由表、数据库表或视图。27.视图设计器中,共提供选项卡的个数是(分数:2.00)A.5B.6C.7 D.8解析:解析:视图设计中依次包含字段、联接、筛选、排序依据、分组依据、更新条件和杂项 7 个选项卡。28.下列对调试器的叙述中,正确的是(分数:2.00)A.“跟踪”窗口用于显示正在执行的程序文件 B.“监视”窗口用于显示表达式以及它们当前的值,并可以在一个
31、表达式上设置断点C.“局部”窗口用于显示当前程序、过程或方法程序中可见的变量、数组、对象以及对象成员D.“调试输出”窗口用于显示程序中指定调试的输出解析:解析:“跟踪”窗口用于显示正在执行的程序文件;“监视”窗口用于监视指定表达式在程序调试执行过程中的取值变化情况;“局部”窗口用于显示模块程序(程序、过程和方法程序)中内存变量的名称、当前取值和类型,“调试输出”窗口显示当前处于执行的程序、过程或方法程序,当正在执行的是子程序时,主程序和子程序的名称都会显示在该窗口。29.下列程序实现的功能是 USE 学生表 DO WHILE NOT EOF( ) IF 计算机=60 SKIP LOOP END
32、IF DISPLAY SKIP ENDDO USE(分数:2.00)A.显示所有计算机成绩大于等于 60 的学生记录B.显示所有计算机成绩小于 60 的学生记录 C.显示第一条计算机成绩大于等于 60 的学生记录D.显示第一条计算机成绩小于 60 的学生记录解析:解析:在循环体中,IF 短语判断当计算机成绩大于等于 60 时,记录指针下移并结束本次循环。而当计算机成绩小于 60 时,执行 ENDIF 之后的语句,即 DISPLAY,显示记录之后,记录指针下移,继续处理表中的下一条记录,直到表结束。30.表单控件工具栏的作用是在表单上创建(分数:2.00)A.文本B.事件C.控件 D.方法解析:
33、解析:Visual FoxPro 中,表单控件工具栏中包括文本框、命令按钮等其他许多控件,用于在表单上创建各种不同控件。31.下面表单及控件常用事件中,与鼠标操作有关的是(分数:2.00)A.ClickB.DbClickC.RightClickD.以上 3 项都是 解析:解析:Click 是鼠标单击事件,DbClick 是鼠标双击事件,RishtClick 是鼠标右击事件。32.有“仓库”表和“职工”表,检索仓库中基本工资大于 3000 元的职工姓名和他们所在的仓库名(分数:2.00)A.SELECT 姓名,仓库名 FROM 职工; WHERE 基本工资3000B.SELECT 姓名,仓库名
34、FROM 仓库; WHERE 基本工资3000C.SELECT 姓名,仓库名 FROM 职工,仓库; WHERE(基本工资3000)OR(职工仓库号=仓库仓库号)D.SELECT 姓名,仓库名 FROM 职工,仓库; WHERE(基本工资3000)AND(职工仓库号=仓库仓库号)解析:解析:本题中 SQL 查询属于多表联接查询,注意条件中关联字段的选取以及逻辑条件的设置。选项A)和选项 B)中都缺少查询的数据表,且查询条件有误;选项 C)中查询条件错误,应使用 AND 进行条件连接,而不是 OR。33.若进栈序列为 1,2,3,4,进栈过程中可以出栈,则下列不可能的一个出栈序列是 ( )。(分
35、数:2.00)A.1,4,3,2B.2,3,4,1C.3,1,4,2 D.3,4,2,1解析:解析:栈是一种后进先出表,选项 C 中,先出栈的是 3,说明此时栈内必然有 1、2,由于 1 先于 2进栈,所以它不可能在 2 之前出栈,故选项 C 这种出栈序列是不可能的。34.排序方法中,将整个无序序列分割成若干小的子序列并分别进行插入排序的方法,称为 ( )。(分数:2.00)A.希尔排序 B.冒泡排序C.插入排序D.选择排序解析:解析:希尔排序法的基本思想是:将整个无序序列分割成若干小的子序列分别进行插入排序。35.在顺序表(3,6,8,10,12,15,16,18,21,25,30)中,用二
36、分法查找关键码值 11,所需的关键码比较次数为 ( )。(分数:2.00)A.2B.3C.4 D.5解析:解析:二分法查找是用查找的关键码与线性表的中间元素比较,然后根据比较结果来判断是结束查找,还是在左边或者右边,子表按相同的方法继续查找。本题中,与 11 比较的关键码分别为15,8,10,12,故比较次数为 4。36.对于 n 个结点的单向链表(无表头结点),需要指针单元的个数至少为 ( )。(分数:2.00)A.n-1B.nC.n+1 D.2n解析:解析:在 n 个结点的单向链表(无表头结点)中,每个结点都有一个指针单元(即指针域),加上头指针,至少需要叶 1 个指针单元。37.在软件开
37、发过程中,软件结构设计是描述 ( )。(分数:2.00)A.数据存储结构B.软件体系结构 C.软件结构测试D.软件控制过程解析:解析:从工程管理角度来看,软件设计分两步完成:概要设计和详细设计。概要设计(又称结构设计)将软件需求转化为软件体系结构,确定系统级接口、全局数据结构或数据库模式。38.模块本身的内聚是模块独立性的重要性度量因素之一。在 7 类内聚中,具有最强内聚的一类是 ( )。(分数:2.00)A.顺序性内聚B.过程性内聚C.逻辑性内聚D.功能性内聚 解析:解析:内聚性是一个模块内部各元素间彼此结合的紧密程度的度量。内聚是从功能角度来度量模块内的联系。内聚共有 7 类,它们之间的内
38、聚性由弱到强排列顺序为:偶然内聚、逻辑内聚、时间内聚、过程内聚、通信内聚、顺序内聚和功能内聚。39.数据存储和数据流都是 ( ),仅仅是所处的状态不同。(分数:2.00)A.分析结果B.事件C.动作D.数据 解析:解析:数据流图有 4 种成分:源点或终点、处理、数据存储和数据流。数据存储是处于静止状态的数据,数据流是处于运动中的数据。40.数据的完整性是指数据的正确性、有效性和 ( )。(分数:2.00)A.可维护性B.独立性C.安全性D.相容性 解析:解析:数据模型应该反映和规定本数据模型必须遵守的、基本的、通用的完整性约束条件。完整性规则是给定的数据模型中数据及其联系所具有的制约和依存规则
39、,用以限定符合数据模型的数据库状态及其状态的变化,以保证数据的正确性、有效性和相容性。二、基本操作题(总题数:1,分数:2.00)41.在考生文件夹下已有表单文件 formtest.scx,其中包含一个文本框、一个表格和两个命令按钮。请按下面要求完成相应的操作: 通过“属性”窗口,将文本框 Text1 的 Value 属性值设置为当前系统日期(日期型,不含时间)。 通过“属性”窗口,将表格 Grid1 的 RecordResourceType 属性值设置为“4-SQL 说明”。 修改“确定”按钮的 Click 事件代码。当单击该按钮时,表格 Grid1 内将显示指定日期以后(含)签订的订单信息
40、(包括“订单号”、“订购日期”和“总金额”信息)。 设置“退出”按钮的Click 事件代码。当单击该按钮时,将释放并关闭表单。(分数:2.00)_正确答案:(正确答案:步骤 1:单击工具栏的打开按钮,选择文件类型中的“表单”选项,单击formtest.scx,再单击确定按钮,即可打开表单设计器修改表单。选中表单中的文本框(Text1)控件,然后在“属性”面板中将“Value”属性值设置为“=DATE()”。选中表单中的表格控件,在“属性”面板中将 RecordSourceType 属性值设置为“4-SQL 说明”。 步骤 2:双击确定命令按钮,编写 Click 事件代码。 RQ=THISFOR
41、M.TEXT1.VALUE THISFORM.GRID1.RECORDSOURCE=“; SELECT 订单.订单号,订单.订购日期,订单.总金额; FROM 订单; WHERE 订单.订购日期=RQ; INTO CURSOR CURSOR1” 双击退出命令按钮,编写 Click 事件代码: ThisForm.Release 步骤 3:单击保存按钮,右击表单选择“执行表单”,最后运行表单即可。)解析:三、简单应用题(总题数:1,分数:2.00)42.建立表单 my,表单含有两个按钮,标题分别为“确定”和“退出”。单击“确定”,弹出对话框显示“你好!”;单击“关闭”,关闭表单。(分数:2.00)
42、_正确答案:(正确答案:步骤 1:单击工具栏的新建按钮,在打开对话框文件类型中选择“表单”,单击新建文件按钮,在出现的 form 上添加两个按钮控件。 步骤 2:按照题目的要求,单击“command1”控件,在属性栏中将其“Caption”一项改为“确定”,再单击“Command2”控件,将其“Caption”属性改为“退出”。 步骤 3:双击“Command1”命令按钮,编写 Click 事件代码。 MessageBox(“你好!“) 双击“command2”(退出)命令按钮,编写 Click 事件代码。 ThisForm.Release 步骤 4:单击保存按钮,将其保存为名为“my”的表单
43、,在表单任意位置右击,选择“运行表单”,即可观看运行结果。)解析:四、综合应用题(总题数:1,分数:2.00)43.现有数据库 hospital,包括 3 个表文件:doctor.dbf(医生)、medicine.dbf(药品)和formula.dbf。(处方)。设计一个名为 cx 的菜单,菜单中有两个菜单项:“查询”和“退出”。 程序运行时,单击“查询”应完成下列操作:查询同一处方中,包含“感冒”两个字的药品的处方号、药名和生产厂,以及医生的姓名和年龄,把查询结果按处方号升序排序存入 result 表中。result 的结构为(姓名,年龄,处方号,药名,生产厂)。 单击“退出”菜单项,程序终
44、止运行。(注:相关资料表文件存在于考生文件夹下。)(分数:2.00)_正确答案:(正确答案:步骤 1:单击工具栏的新建按钮,打开新建对话框,在文件类型区选择“菜单”,单击新建文件。打开菜单设计器,在“菜单名称”中输入“查询”,在“结果”下拉列表框中选择“过程”,单击下一行,在“菜单名称”中输入“退出”,在“结果”下拉列表框中选择“过程”,在右边的文本框中编写命令“SET SYSMENU TO DEFAULT”。 步骤 2:在菜单设计器中,单击选定菜单名称下刚创建的“查询”行,单击创建按钮,在弹出的文本框中输入以下代码。 SET TALK OFF SET SAFETY OFF OPEN DATA
45、BASE hospital SELECT 姓名,年龄,处方号,药名,生产厂 INTO TABLE result FROM; doctor,medicine,formula WHERE doctor.医生编号=formula.医生编号 AND medicine.药品编号=formula.;药品编号 AND 药品名称 like “%感冒%“ ORDER BY 处方号 CLOSE ALL SET SAFETY ON SET TALK ON 步骤 3:单击工具栏的保存按钮,打开另存为对话框,输入“cx”,单击保存。选择菜单生成,在生成菜单对话框中输入“cx”,单击生成按钮。单击工具栏的运行按钮,运行菜单。 步骤 4:执行“查询”菜单命令后,系统自动将查询结果保存在所建立的新数据表文件“result.dbf”中。)解析: