1、国家二级( VF)机试模拟试卷 77及答案与解析 一、选择题 1 下列叙述中正确的是 ( )。 ( A)循环队列是队列的一种链式存储结构 ( B)循环队列是队列的一种顺序存储结构 ( C)循环队列是非线性结构 ( D)循环队列是一种逻辑结构 2 下列关于线性链表的叙述中,正确的是 ( )。 ( A)各数据结点的存储空间可以不连续,但它们的存储顺序与逻辑顺序必须一致 ( B)各数据结点的存储顺序与逻辑顺序可以不一致,但它们的存储空间必须连续 ( C)进行插入与删除时,不需要移动表中的元素 ( D)以上说法均不正确 3 一棵二叉树共有 25个结点,其中 5个是叶子结点,则度为 1的结点数为 ( )
2、。 ( A) 16 ( B) 10 ( C) 6 ( D) 4 4 在下列模式中,能够给出数据库物理存储结构与物理存取方法的是 ( )。 ( A)外模式 ( B)内模式 ( C)概念模式 ( D)逻辑模式 5 在满足实体完整性约束的条件下 ( )。 ( A)一个关系中应该有一个或多个候选关键字 ( B)一个关系中只能有一个候选关键字 ( C)一个关系中必须有多个候选关键字 ( D)一个关 系中可以没有候选关键字 6 有三个关系 R、 S和 T如下: 则由关系 R和 S得到关系 T的操作是 ( )。 ( A)自然连接 ( B)交 ( C)除 ( D)并 7 下面描述中,不属于软件危机表现的是 (
3、 )。 ( A)软件过程不规范 ( B)软件开发生产率低 ( C)软件质量难以控制 ( D)软件成本不断提高 8 下面不属于需求分析阶段任务的是 ( )。 ( A)确定软件系统的功能需求 ( B)确定软件系统的性能需求 ( C)需求规格说明书评审 ( D)制定软件集成测试计划 9 在黑盒测试 方法中,设计测试用例的主要根据是 ( )。 ( A)程序内部逻辑 ( B)程序外部功能 ( C)程序数据结构 ( D)程序流程图 10 在软件设计中不使用的工具是 ( )。 ( A)系统结构图 ( B) PAD图 ( C)数据流图 (DFD图 ) ( D)程序流程图 11 在建立数据库表时给该表指定了主索
4、引,该索引实现了数据完整性中的( )。 ( A)参照完整性 ( B)实体完整性 ( C)域完整性 ( D)用户定义完整性 12 在数据库表中,要求指定字段或表达式不出现重复值,应该 建立的索引是( )。 ( A)唯一索引 ( B)唯一索引和候选索引 ( C)唯一索引和主索引 ( D)主索引和候选索引 13 在 Visual FoxPro中,执行 SQL的 DELETE命令和传统的 FoxPro DELETE命令都可以删除数据库表中的记录,下面正确的描述是 ( )。 ( A) SQL的 DELETE命令删除数据库表中的记录之前,不需要先用 USE命令打开表 ( B) SQL的 DELETE命令和
5、传统的 FoxPro DELETE命令删除数据库表中的记录之前,都需要先用命令 USE打开表 ( C) SQL的 DELETE命令可以物理地删除数据库表中的记录,而传统的 FoxPro DELETE命令只能逻辑删除数据库表中的记录 ( D)传统的 FoxPro DELETE命令还可以删除其它工作区中打开的数据库表中的记录 14 在表单中为表格控件指定数据源的属性是 ( )。 ( A) DataSource ( B) RecordSource ( C) DataFrom ( D) RecordFrom 15 为了在报表中打印当前时间,应该插入一个 ( )。 ( A)表达式控件 ( B)域控件 (
6、 C) 标签控件 ( D)文本控件 16 以下关于查询的描述正确的是 ( )。 ( A)不能根据自由表建立查询 ( B)只能根据自由表建立查询 ( C)只能根据数据库表建立查询 ( D)可以根据数据库表和自由表建立查询 17 在表单设计器环境中,为表单添加一选项按钮组: 男女。默认情况下,第一个选项按钮 “男 ”为选中状态,此时该选项按钮组的 Value属性值为 ( )。 ( A) 0 ( B) 1 ( C)男 ( D) T 18 在 Visual Foxpro中,属于命令按钮属性的是 ( ) 。 ( A) Parent ( B) This ( C) ThisForm ( D) Click 1
7、9 以下关于视图描述错误的是 ( )。 ( A)只有在数据库中可以建立视图 ( B)视图定义保存在视图文件中 ( C)从用户查询的角度视图和表一样 ( D)视图物理上不包括数据 20 关闭释放表单的方法是 ( )。 ( A) shut ( B) closeForm ( C) release ( D) close 21 执行如下命令的输出结果是 ( )。 ?15 4, 15 -4 ( A) 3 -1 ( B) 3 3 ( C) 1 1 ( D) 1 -1 22 在 Visual FoxPro中,如果希望跳出 SCAN - ENDSCAN循环语句、执行ENDSCAN后面的语句,应使用 ( )。 (
8、 A) LOOP语句 ( B) EXIT语句 ( C) BREAK语句 ( D) RETURN语句 23 假设新建了一个程序文件 myProc prg(不存在同名的 exe、 app和 xp文件),然后在命令窗口输入命令 DO myProc,执行该程序并获得正常的结果。现在用命令 ERASE myProc prg删除该 程序文件,然后再次执行命令 DO myProc,产生的结果是 ( )。 ( A)出错 (找不到文件 ) ( B)与第一次执行的结果相同 ( C)系统打开 “运行 ”对话框,要求指定文件 ( D)以上说法都不对 24 在 Visual FoxPro中,使用 LOCATE FOR命
9、令按条件查找记录,当查找到满足条件的第一条记录后,如果还需要查找下一条满足条件的记录,应该( )。 ( A)再次使用 LOCATE命令重新查询 ( B)使用 SKIP命令 ( C)使用 CONTINUE命令 ( D)使用 GO命令 25 在 Visual FoxPro中,假设 student表中有 40条记录,执行下面的命令后,屏幕显示的结果是 ( )。 ?RECCOUNT() ( A) 0 ( B) 1 ( C) 40 ( D)出错 26 恢复系统默认菜单的命令是 ( )。 ( A) SET MENU TO DEFAULT ( B) SET SYSMENU TO DEFAULT ( C) S
10、ET SYSTEM MENU TO DEFAULT ( D) SET SYSTEM TO DEFAULT 27 下面程序的运行结果是 ( )。 SET TALK OFF STORE O TO s, i DO WHILE i LOOP EXIT ENDDO 运行该语句时,先判断 是否为真,如果是真则运行 DO WHILE与 ENDDO间的循环体,当运行到 ENDDO时,再返回 DO WHILE重新判断循环条件是否为真,确定是否再次运行循环体。若条件为假则结束循环语句运行 ENDDO后的语句。如果循环体中有 LOOP命令,当遇到 LOOP时就结束本次循环,不再运行它下面到 ENDDO间的语句,提前
11、返回 DOWHILE进行下一次的循环判断;如果循环体中有 EXIT命令,当遇到它时就结束循环运行 ENDDO后的语句。因此 B)选项正确。 23 【正确答案 】 A 【试题解析】 ERASE命令是从磁盘上删除文件,用此命令删除的任何文件都不能恢复。格式为 “ERASE FileNamel? RECYCLE”,因此再次执行的时候会出错,选项 A)正确。 24 【正确答案】 C 【试题解析】 LOCATE命令是按条件定位记录位置的命令,该命令执行后将记录指针定位在满足条件的第 1条记录上。如果要使指针指向下一条满足条件的记录,使用 CONTIN-UE命令。如果没有满足条件的记录则指向文件结束位置。
12、因此 C)选项正确。 25 【正确答案】 C 【试 题解析】 reccount()是系统函数,从字面上看, rec-count()是一个自定义过程,意为: Record Count,即返回表的记录总数。题中 student表中共有 40条记录,因此执行 recordcount()命令后,返回表的记录总数 40。 26 【正确答案】 B 【试题解析】 恢复系统菜单的命令为 SET SYSMENUTO DEFAULT。通过 SET SYSMENU命令可以允许或禁止在程序执行时访问系统菜单,也可以重新配置系统菜单。系统菜单配置命令为: SET SYSMENU ON | OFFI AUTOMATIC
13、|TO |TO |TO DE-FAULT ISAVEI NOSAVE。一般常用到将系统菜单恢复成标准配置,可先执行 SET SYSMENU NOSAVF,然后执行 SET SYS-MENU TO DEFAULT。 27 【正确答案】 C 【试题解析】 SFT TALK OFF的含义为关闭程序运算的显示过程。 STORETO为内存变量的赋值命令,用于计算表达式并将表达式值赋给一个或多个内存变量。 MOD(, )为求余数函数,用于返回两个数值相除后的余数。本题为一个循环,不满足条件后跳出循环,最终返回 S的值为 50。 28 【正确答案】 B 【试题解析】 更新数据的命令格式为: UPDATE表名
14、 SFJT字段名 1=表达式1字段名 2=表达式 2WHFRE 条件 。一般使用 WHERE子句指定更新的条件,并且一次可以更新多个字段;如果不使用 WHERE子句,则更新全部记录。INSERT TABLE命令用于插入数据, CREATE TABLE用于新建表。 29 【正确答案】 A 【试题解析】 查询尚未最后确定订购单的有关信息,可使用空值查询, IS NULL为空值, NULL或 NOT NULL说明字段允许或不允许为空值。本题 A)格式正确。 30 【正确答案】 A 【试题解析】 SQL的核心是查询。 SQL的查询命令也称作 SELECT命令,它的基本形式由 SELECT - FROM
15、 -WHERE查询块组成,多个查询块可以嵌套执行。超连接查询有四种连接方式,其基本格式如下: SELECTFROM 左表 JN-NER I LEFTl RIGHT I FULL JOIN右表 ON连接条 件 WHERF其他条件。本题DISTINCT用于去掉重复值, COUNT(DIS-TINCT订单号 )表示订购单的数量,SUM(数量 *单价 )为订购单金额, A)选项格式正确。 31 【正确答案】 D 【试题解析】 INSERT INrro(字段名 1,字段名 2, ) VALUES( 字段值 1,字段值 2, ) 命令用于插入数据,当插入的不是完整的记录时,可以通过字段名 1,字段名 2
16、来指定字段; VALUES(字段值 1,字段值 2, ) 给 H具体的记录值。本题订购单表参照客户表,客户表中的记录 为 C1 - C10,订购单表的订购单记录为 ORl - OR8,因此,只有 D)选项可以正确执行。 32 【正确答案】 C 【试题解析】 视图由于是从表派生而来的,所以不存在修改结构的问题,但是视图可以删除,其命令格式为: DROPVIFW。 33 【正确答案】 B 【试题解析】 简单查询是基于一个表进行的查询,是由 SELFCT和 FROM短语构成的无条件查询,或由 SEI FCT、 FROM和 WHERF短语构成的条件查询。本题查询第一作者为张三,条件应该是第一作者 =“
17、张三 ”,因此 B)为正 确选项。 34 【正确答案】 C 【试题解析】 SQL的核心是查询,简单查询是由 SF-LECT和 FROM短语构成的无条件查询,或由 SELFCT、 FROM和 WHERE短语构成的条件查询。其基本格式为: SELECT FROMWHEREGROUP BY HAVINGORDERBYINTO DBFITABLEI。本题查询尚未归还书的图书编号和借书日期,可利用空值查询,使用 IS NULL字符,选项 C)格式正确。 35 【正确答案】 A 【试题解 析】 在 SQL查询语句的尾部添加 INTO CURSOR可以将查询的结果放人指定的临时表中。此操作的通常是将一个复杂
18、的查询分解,临时表通常不是最终结果,可以接下来对临时表操作得到最终结果。因此, A)为正确选项。 36 【正确答案】 B 【试题解析】 在数据库中,数据完整性是指保证数据正确的特性,数据完整性一般包括实体完整性、域完整性和参照完整性等。因此选项 B)正确。 37 【正确答案】 D 【试题解析】 简单查询是基于一个表进行的查询,是由 SFLECT和 FROM短语构成的无条件 查询,或由 SELECT、 FROM和 WHERE短语构成的条件查询。LIKE为字符串匹配运算符,可与通配符 “ ”和 “_”一起使用。 “ ”表示与任意多个字符匹配; “_”表示与任意一个字符匹配。本题 D)选项格式正确。
19、 38 【正确答案】 D 【试题解析】 选项组控件的 Value属性用于初始化或返回选项组中被选中的选项按钮, Value属性值的类型可以是数值型的,也可以是字符型的。若为数值型 N,则表示选项组中第 N个选项按钮被选中,若为字符型 C,则表示选项组中 Caption属性值为 C的选项按钮被选中。本题选中第 二个按钮 “女 ”,该选项组 Value属性的值既可以为 “女 ”也可以为 “2”。 39 【正确答案】 C 【试题解析】 Show是方法的一种,用于显示表单。 ShowWindow为表单属性,用于控制表单在屏幕中、悬浮在顶层表单中或作为顶层表单出现。执行MvForm Show可以让隐藏的
20、表单在屏幕上显示,因此 C)选项正确。 40 【正确答案】 A 【试题解析】 表单对象从创建到被释放的整个过程可以分为 5个阶段: 装载阶段 (Load事件 ); 对象生成阶段 (Init事件 ); 交互操作阶段 (如单击 事件 ); 对象释放阶段 (Destroy事件 ); 卸载阶段 (Unload事件 )。 有关表单和控件的 Load、 Init、 Destroy、 Unload事件的先后顺序可总结为: 表单的 Load事件; 表单中控件的 Init事件; 表单的 Init事件; 表单的 Destroy事件; 表单中控件的 Destroy事件; 表单的 Unload事件。 因此本题 A)选
21、项正确。 二、基本操作题 41 【正确答案】 【操作步骤】 ( 1)在命令窗口中输入命令 “use emp1oyee”,然后按回车键。接着在命令窗口输入命令 “copy stru to emp_bak dbf”,再按回车键。也可以通过常用工具栏中的 “打开 ”按钮打开 emp1oyee表,然后在命令窗口输入 “copy stru to emp_bak dbf”,再按回车键。 ( 2)打开考生文件夹下的 “emp1oyee”表,在命令窗口输入 “modi stru”命令,在表设计器中按要求为表设置候选索引,索引名为 “empid”,索引表达式为 “职员号 ”。 ( 3)单击工具栏中的 “新建 ”
22、按钮,通过报表向导新建一个报表,向其中添加emp1oyee表,然后按要求将指定字段添加 到报表中,并将 “职员号 ”设置升序排序。修改报表样式为 “简报式 ”,报表标题为 “职员一览表 ”。最后将报表保存为emp1oy-ee frx。 ( 4)单击工具栏中的 “新建 ”按钮,新建一个名为 one的程序文件,并在其中输入代码 “report form emp1oyee”,最后在命令窗口输入 “DO one prg”运行程序,查看报表的预览结果。 三、简单应用题 42 【正确答案】 ( 1)【操作步骤】 步骤 1:单击工具栏中的 “打开 ”按钮,打开考生文件夹下的 SCORE_MANAGER数据库
23、,在空白处右击,选择 “新 建本地视图 ”命令,将表 student和 scorel添加到视图设计器中。 步骤 2:在 “字段 ”选项卡中,将 “student学号 ”, “student姓名 ”, “student系部 ”添加到选定字段。 步骤 3:在 “筛选 ”选项卡中,首先选择 “scorel课程号 ”字段, “条件 ”选择 Is NULL,并选择 “否 ”;再选择 “scorel成绩 ”字段, “条件 ”选择 Is NULL。 步骤 4:保存视图为 “NEW_VIEW”并运行视图。 ( 2)【操作步骤】 步骤 1:单击工具栏中的 “新建 ”按钮,新建一个表单,通过表单控件工具栏为表 单
24、添加一个表格控件,设置其 Name属性为 grdcourse。 步骤 2:在表单设计器中选择表格控件并右击,选择 “生成器 ”命令,在表格生成器的 “表格项 ”选项卡中将 COURSE表的所有字段添加到选定字段中。 步骤 3:在属性窗口中修改表格控件的 RecordSourceType属性值为 “0-表 ”。 步骤 4:保存表单,输入文件名 MYFORM3 SCX,运行表单。 四、综合应用题 43 【正确答案】 【操作步骤】步骤 1:单击工具栏中的 “新建 ”按钮,选择 “文件类型 ”中的 “表单 ”,单击 “新建文件 ”按钮;在表单上添加一个标 签,一个文本框,两个命令按钮,一个表格控件。步
25、骤 2:在 “表单设计器 ”中单击鼠标右键,在弹出的快捷菜单中选择 “数据环境 ”,将 “机票打折 ”表和 “机票价格 ”表添加到数据环境设计器中。步骤 3:通过属性窗口设置表单及各控件的属性。步骤 4:选中表格控件,单击鼠标右键,在弹出的快捷菜单中选择 “编辑 ”命令;选中列标题,在属性窗口中,通过Caption属性将表格控件的列标题分别修改为 “航班 ”“价格 ”“折扣 ”“当前价格 ”。步骤5:双击 “查询 ”按钮,在 Click事件中输入以下查询语句。THISFORM Gridone RecordSource=“SELECT航班,价格,折扣,价格 *机票打折,折扣 /10 AS当前价格; FROM机票价格,机票打折; WHERE机票价格序号=机票打折序号 AND折扣