1、国家二级( VF)机试模拟试卷 90及答案与解析 一、选择题 1 下列关于栈和队列的描述中,正确的是 ( )。 ( A)栈是先进先出 ( B)队列是先进后出 ( C)队列允许在队头删除元素 ( D)栈在栈顶删除元素 2 已知二叉树后序遍历序列是 CDABE,中序遍历序列是 CADEB,它的前序遍历序列是 ( )。 ( A) ABCDE ( B) ECABD ( C) EACDB ( D) CDEAB 3 在数据流图中,带有箭头的线段表示的是 ( )。 ( A)控制流 ( B)数据流 ( C)模块调 用 ( D)事件驱动 4 结构化程序设计的 3种结构是 ( )。 ( A)顺序结构,分支结构,跳
2、转结构 ( B)顺序结构,选择结构,循环结构 ( C)分支结构,选择结构,循环结构 ( D)分支结构,跳转结构,循环结构 5 下列方法中,不属于软件调试方法的是 ( )。 ( A)回溯法 ( B)强行排错法 ( C)集成测试法 ( D)原因排除法 6 下列选项中,不属于模块间耦合的是 ( )。 ( A)内容耦合 ( B)异构耦合 ( C)控制耦合 ( D)数据耦合 7 下列特征中不是面向 对象方法的主要特征的是 ( )。 ( A)多态性 ( B)标识惟一性 ( C)封装性 ( D)耦合性 8 在数据库设计中,将 E一 R图转换成关系数据模型的过程属于 ( )。 ( A)需求分析阶段 ( B)概
3、念设计阶段 ( C)逻辑设计阶段 ( D)物理设计阶段 9 在一棵二叉树上,第 5层的结点数最多是 ( )。 ( A) 8 ( B) 9 ( C) 15 ( D) 16 10 下列有关数据库的描述,正确的是 ( )。 ( A)数据库设计是指设计数据库管理系统 ( B)数据库技术的根本目标是 要解决数据共享的问题 ( C)数据库是一个独立的系统,不需要操作系统的支持 ( D)数据库系统中,数据的物理结构必须与逻辑结构一致 11 要从字符串 “全国计算机等级考试 ”中取出子串 “等级考试 ”,应该使用函数 ( )。 ( A) SUBSTR(“全国计算机等级考试 “, 6, 4) ( B) SUBS
4、TR(“全国计算机等级考试 “, 6, 8) ( C) SUBSTR(“全国计算机等级考试 “, 11, 4) ( D) SUBSTR(“全国计算机等级考试 “, 11, 8) 12 关系数据库的任何检索操作所涉及的 3种基本运算不包 括 ( )。 ( A)连接 ( B)比较 ( C)选择 ( D)投影 13 下列关于项目及项目中文件的叙述,不正确的是 ( )。 ( A)项目中的文件与项目文件分别保存在独立的物理文件中 ( B)项目中的文件表示该文件与项目建立了一种联系 ( C)删除项目时自动删除项目中所包含的文件 ( D)通过项目可以方便地对项目中的文件进行操作 14 在 VFP中,创建的新
5、类可以被保存在类库文件中,其扩展名为 ( )。 ( A) prg ( B) vcx ( C) pjx ( D) scx 15 在 Visual FoxPro中有如下内存变量的赋值语句: X=2008一 08一 08 8: 00: 00 AM) Y= y 2=“12 34“ 执行上述语句之后,内存变量的 X、 Y、 Z的数据类型为 ( )。 ( A) D、 L、 C ( B) T、 L、 C ( C) D、 C、 N ( D) T、 C、 N 16 设 X=“123“, Y=“1234“,则下列表达式中值为 T的是 ( )。 ( A) X$Y ( B) AT(X, Y)=0 ( C) X=Y (
6、 D) X=Y 17 下面程序的输出结果为 ( )。 CLEAR i=1 DO WHILE k=3 IF INT(U2)!=i/2 ?“fox“ ENDIF ?“pro“ i=i+2 ENDDO ( A) pro pro ( B) fox profox ( C) foxpro pro ( D) foxpro foxpro 18 执行以下程序,显示的结果是 ( )。 a=“foxpro“ b=“ i=LEN(a) DO WHILE i =1 b=b+SUBSTR(a, i, 1) i一 i一 1 ENDDO ?b ( A) profox ( B) foxpro ( C) orpxof ( D)程
7、序错误 19 执行下列程序: CLEAR DO PROG1 RETURN PROCEDURE PROG1 X=2 DO PROG2 ?X RETURN PROCEDURE PROG2 X=X+3 RETURN 程序的运行结果为 ( )。 ( A) 2 ( B) 3 ( C) 5 ( D) F 20 使用 SQL语句将学生表 S中年龄 (AGE)大于 30岁的记录删除,正确的命令是( )。 ( A) DELETE FOR AGE 30 ( B) DELETE FROM SWHERE AGE 30 ( C) DELETE S FORAGE 30 ( D) DELETE SWHERE AGE 30
8、21 有关 PACK命令的描述,正确的是 ( )。 ( A) PACK命令能物理删除当前表的当前记录 ( B) PACK命令能删除当前表的带有删除标记的记录 ( C) PACK命令能删除当前表的全部记录 ( D) PACK命令能删除表的结构和全部记录 22 可以在添加、更改或删除记录时自动维护索引的索引是 ( )。 ( A)非结构化复合索引文件 ( B)结构化复合索引文件 ( C)单一索引文件 (IDX) ( D)复合索引文件 (CDX) 23 设有两个数据库表,父表和子表之间是一对多的联系,为控制父表和子表中数据的一致性,可以设置 “参照完整性规则 ”,要求 ( )。 ( A)在父表连接字段
9、上建立普通索引,在子表连接字段上建立主索引 ( B)在父表连接字段上建立主索引,在子表连接字段上建立普通索引 ( C)在父表连接字段上不需要建立任何索引,在子表连接字段上建立普通索引 ( D)在父表和子表的连接字段上都要建立主索引 24 在 VFP中,下列关于表的叙述正确的是 ( )。 ( A)在数据库表和 自由表中,都不能为表的字段指定默认值和输入掩码 ( B)在数据库表和自由表中,都能为表中的字段指定标题和添加注释 ( C)在自由表中,能使用长表名和长字段名 ( D)在数据库表中,能给表中的字段定义有效性规则和默认值 25 假设当前 xs和 cj表之间建立了临时联系,要取消两表间的联系,可
10、使用 ( )。 ( A) DELETE RELATION ( B) DELETE RELATION xs TO cj ( C) SET RELATION TO ( D) SET RELATION xs TO cj 26 假 设 “教师 ”表中有 C型字段 “姓名 ”,要求将姓 “李 ”的教师记录全部打上删除标记,可以使用 SQL命令 ( )。 ( A) DELETEFROM教师 FOR姓名 =“李 “ ( B) DELETE FROM教师 WHERE姓名 =“李 “ ( C) DELETE FROM教师 FOR姓名 =“李 #“ ( D) DELETE FROM教师 WHERE姓名 LIKE“
11、李 “ 27 如果要创建一个 3级分组报表,第一级分组是 “部门 “(字符型),第二级分组是 “性别 ”(字符型),第三级分组是 “基本工资 ”(数值型),当前索引的索引表达式应当是 ( )。 ( A)部门 +性别 +基本工资 ( B)性别 +部门 +STR(基本工资 ) ( C) STR(基本工资 )+性别 +部门 ( D)部门 +性别 +STR(基本工资 ) 28 如果想在运行表单时,向 TEXT2中输入字符,回显字符显示的是 “*”号,则可以在 Forml的 Init事件中加入语句 ( )。 ( A) FORM1 TEXT2 PASSWORDCHAR=“*“ ( B) FORMl TEX
12、T2 PASSWORD=“*“ ( C) THISFORM TEXT2 PASSWORD=“*“ ( D) THISFORM TEXT2 PASSWORDCHAR=“*“ 29 页框控件也称作选项卡控件,在一个页框中可以有多个页面,页面个数的属性是 ( )。 ( A) Page ( B) ButtonCount ( C) PageCount ( D) ColumnCount 30 以下属于容器类控件的是 ( )。 ( A)表单 ( B)标签 ( C)文本框 ( D)组合框 31 有关列表框和组合框的叙述中,正确的是 ( )。 ( A)列表框可以设置多重选择,而组合框不可以 ( B)组合框可以设
13、置多重选择,而列表框 不可以 ( C)列表框和组合框都可以设置成多重选择 ( D)列表框和组合框都不可以设置成多重选择 32 下列关于视图的说法中,不正确的叙述是 ( )。 ( A)视图与表具有相同的特性,可以用来存储数据 ( B)利用视图可以对数据进行更新 ( C)视图与数据表可以进行连接操作 ( D)视图是根据一个或多个表派生的虚拟表 33 如果数据环境设计器中有多个关联的表,若要删除某个表,则与之关联的表与被删除表之间的关系将 ( )。 ( A)不再存在 ( B)可能存在 ( C)仍然存在 ( D)以上都对 34 在 SQL语句中,为了避免查询到重复记录,可用 ( )。 ( A) DIS
14、TINCT ( B) HAVING ( C) INTO ( D) EXCEPT 35 SQL的 SELECT语句中,用来定义一个区间范围的特殊运算符是 ( )。 ( A) IN ( B) BETWEENAND ( C) EXISTS ( D) UNION 35 使用如下 3个数据库表: 职员 dbf:职员号 C(3),姓名 C(6),性别 C(2),组号 N (1),职务 C(10) 客户 dbf:客户号 C(4),客户名 C(36),地 址 C(36),所在城市 C (36) 订单 dbf:订单号 C(4),客户名 C(4),职员号 C(3),签订日期 D,金额 N(6 2) 36 查询金额
15、最大的 10订单的信息,正确的 SQL语句是 ( )。 ( A) SELECT*TOP 10 PERCENT FROM订单 ( B) SELECT TOP 10 *FROM订单 ORDER BY金额 DESC ( C) SELECT*TOP 10 PERCENT FROM订单 ORDERBY金额 ( D) SELECT TOP 10 PERCENT*FROM订单 ORDERBY金额 DESC 37 查询订单数在 3个以上、订单的平均金额在 200元以上的职员号,正确的 SQL语句是 ( )。 ( A) SELECT职员号 FROM订单 GROUP BY职员号 HAVING COUNT(*) 3
16、 AND AVG_金额 200 ( B) SELECT职员号 FROM订单 GROUP BY职员号 HAVING COUNT(*) 3 AND AVG(金额) 200 ( C) SELECT职员号 FROM订单 GROUP BY职员号 HAVING COUNT(*) 3 WHERE AVG(金额) 200 ( D) SELECT职员号 FROM订单 GROUP BY职员号 WHERE COUNT(*) 3 AND AVG金额 200 38 查询 2005年 1月 1日后签订的订单,显示订单的订单号、客户名以及签订日期,正确的 SQL语句是 ( )。 ( A) SELECT订单号,客户名,签订日
17、期 FROM订单 JOIN客户: ON订单客户号 =客户,客户号 WHERE签订日期 2005一 1一 1) ( B) SELECT订单号,客户名,签订日期 FROM订单 JOIN客户: WHERE订单,客户号 =客户客户号 AND签订日期 2005一 1一 1 ( C) SELECT订单号,客户名,签订日期 FROM订单,客户: WHERE订单,客户号 =客户客户号 AND签订日期 2005一 1一 1) ( D) SELECT订单号,客户名,签订日期 FROM订单,客户: ON订单,客户号=客户客户号 AND签订日期 2005一 1一 1 39 有如下 SQL语句: SELECT订单号,签
18、订日期,金额 FROM订单,职员;WHERE订单,职员号 =职员职员号 AND姓名 =“李二 “与如上语句功能相同的SQL语句是 ( )。 ( A) SELECT订单号,签订日期,金 额 FROM订单 WHERE EXISTS;(SELECT*FROM职员 WHERE姓名 =“李二 “) ( B) SELECT订单号,签订日期,金额 FROM订单 WHERE EXISTS;(SELECT*FROM职员 WHERE职员号 =订单职员号 AND姓名 =“李二 “) ( C) SELECT订单号,签订日期,金额 FROM订单 WHERE IN;(SELECT职员号FROM职员 WHERE姓名 =“李
19、二 “) ( D) SELECT订单号,签订日期,金额 FROM订单 WHERE IN;(SELECT职员号FROM职员 WHERE职员号 =订单,职员号 AND姓名 =“李二 “) 40 从订单表中删除客户号为 “1001”的订单记录,正确的 SQL语句是 ( )。 ( A) DROP FROM订单 WHERE客户号 =“1001“ ( B) DROP FROM订单 FOR客户号 =“1001“ ( C) DELETE FROM订单 WHERE客户号 =“1001“ ( D) DELETE FROM订单 FOR客户号 =“1001“ 二、基本操作题 41 在考生文件夹下完成下列操作: (1)
20、使用报表向导为 “职工 ”表创建一个报表 one,选择 “职工 ”表的所有字段,报表样式 选择简报式,按 “职工号 ”为升序排列,其他选项取默认值。 (2)建立一个如图 3-5所示的菜单 mymenu,注意要生成菜单。(3)新建数据库文件 mydata,并将 “教师 ”表加入其中。 (4)使用 SQL Create命令建立 “学生 ”表, “学生 ”表中包括学号 (Cl0)、姓名 (C16)和年龄 (I)字段,学号为主关键字。命令存储于文件 mypro prg中。 三、简单应用题 42 (1)编写程序文件 prgone prg,其功能是从 “人事管理 ”数据库的相关表中查询销售部从 1985-
21、1989年这 5年出生的所有职工的信息, 并存到表 cyqk dbf中。查询结果包含编号、姓名、出生日期和部门名称(部门表中的名称) 4个字段;按职工的出生日期和编号升序排序。最后运行该程序。 (2)扩展基类 ListBox,创建一个名为 MyListBox的新类。新类保存在名为Myclasslib的类库中,该类库文件存放在考生文件夹下。设置新类的 Height属性的默认值为 120, Width属性的默认值为 80。 四、综合应用题 43 在考生文件夹下完成下列操作: (1)建立一个文件名和表单名均为 formtest的表单,表单中包括一个标签 ( Labell)、一个列表框 ( Listl
22、)、一个表格 (Gridl),如图 3-3所示。 (2)在表单的数据环境中添加“学院表 ”和 “教师表 ”。 (3)通过属性窗口将标签的标题设为 “系名 ”。 (4)列表框用于显示系名,通过属性窗口将列表框 ( Listl)的 RowSource和 RowSourceType屙 生指定为 “学院表系名 ”和 6。 (5)表格用于显示所有教师的相关信息,通过属性窗口将表格 ( Gridl)的 RecordSource和 RecordSourceType属性指定为 “select职工号,姓名,课时 from教师表 intocursortmp”和 4。 (6)为列表框 (Listl)的 DblCli
23、ck事件编写程序。程序的功能是:表单运行时,用户双击列表框中的选项时,将所选系教师的“职工号 ”“姓名 ”和 “课时 ”三个字段的信息存入自由表 two dbf中,表中的记录按“职工号 ”降序排列。 (7)运行表单,在列表框中双击 “信息管理 ”。 国家二级( VF)机试模拟试卷 90答案与解析 一、选择题 1 【正确答案】 D 【试题解析】 栈实际也是线性表,只不过是一种特殊的线性表。栈是只能在表的一端进行插入和删除运算的线性表,通常称插入、删除的这 一端为栈顶,另一端为栈底。队列是只允许在一端删除,在另一端插入的顺序表,允许删除的一端叫做队头,允许插入的一端叫做队尾。 2 【正确答案】 C
24、 【试题解析】 由于后序遍历的最后一个元素为 E,所以 E为根结点,所以它的前序遍历的首个元素为 E,故排除 A)和 D)选项。由于中序遍历中,元素 B在元素根结点 E的后面,所以 B为二叉树的右子树,并且该二叉树右子树只有一个元素,所以前序遍历的最后一个元素应为 B,故选项 C)为正确选项,即该二叉树的前序遍历序列是 EACDB。 3 【正确答案】 B 【试题解析】 数据流图中带箭头的线段表示数据流,沿箭头方向传递数据的通道,一般在旁边标注数据流名。 4 【正确答案】 B 【试题解析】 程序设计语言仅仅使用顺序、选择和重复(循环)三种基本控制结构就足以表达出各种其他形式结构的程序设计方法。遵
25、循程序结构化的设计原则,按结构化程序设计方法设计出的程序易于理解、使用和维护;可以提高编程工作的效率,降低软件的开发成本。 5 【正确答案】 C 【试题解析】 软件调试主要采用以下三种方法: 强行排错法:作为传统的调试方法,其过程可概括为设置断点、程序暂停、观察程 序状态、继续运行程序。 回溯法:该方法适合于小规模程序的排错、即一旦发现了错误,先分析错误征兆,确定最先发现 “症状 ”的位置。 原因排除法:该方法是通过演绎和归纳,以及二分法来实现。 6 【正确答案】 B 【试题解析】 耦合可以分为下列几种,它们之间的耦合度由高到低排列: 内容耦合一一若一个模块直接访问另一模块的内容,则这两个模块
26、称为内容耦合; 公共耦合一一若一组模块都访问同一全局数据结构,则称为公共耦合; 外部耦合一一若一组模块都访问同一全局数据项,则称为外部耦合; 控制耦合一一若一模块明显地把开 关量、名字等信息送入另一模块,控制另一模块的功能,则称为控制耦合; 标记耦合一一若两个以上的模块都需要其余某一数据结构的子结构时,不使用其余全局变量的方式而全使用记录传递的方式,这样的耦合称为标记耦合; 数据耦合一一若一个模块访问另一个模块,被访问模块的输入和输出都是数据项参数,则这两个模块为数据耦合; 非直接耦合一一若两个模块没有直接关系,它们之间的联系完全是通过程序的控制和调用来实现的,则称这两个模块为非直接耦合,这样
27、的耦合独立性最强。 7 【正确答案】 D 【试题解析】 面向对象设计方法与面 向过程设计方法有本质的不同,其基本原理是:使用现实世界的概念抽象地思考问题从而自然地解决问题。其特点包括:标识惟一性、多态性、封装性、模块独立性、继承和多态性。 8 【正确答案】 C 【试题解析】 逻辑结构设计的任务:概念结构是各种数据模型的共同基础,为了能够用某一 DBMS实现用户需求,还必须将概念结构进一步转化为相应的数据模型,这正是数据库逻辑结构设计所要完成的任务。它包括从 E一 R图向关系模式转换和逻辑模式规范化及调整、实现。 9 【正确答案】 D 【试题解析】 根据二叉树的性质:二 叉树第 i (i1)层上
28、至多有 2 sub i一 1/sub个结点。得到第 5层的结点数最多是 16个。 10 【正确答案】 B 【试题解析】 数据库设计的目的实质上是设计出满足实际应用需求的实际关系模型。数据库技术的主要目的是有效地管理和存取大量的数据资源,包括:提高数据的共享性,使多个用户能够同时访问数据库中的数据;减小数据的冗余,以提高数据的一致性和完整性;提供数据与应用程序的独立性,从而减少应用程序的开发和维护代价。 11 【正确答案】 D 【试题解析】 SUBSTR为取子串函数。格式: SUBSTR(字符表达式,起始位置 ,长度 ),功能是从指定表达式的指定起始位置取指定长度的子串作为函数值。在 SUBSI
29、RO函数中,若缺省第 3个自变量长度,则函数从指定位置一直取到最后一个字符。由于一个汉字占用两个字节,本题中子串 “等级考试 ”的起始位置应该是 52+1=11,而 4个汉字的长度为 42=8个字节。 12 【正确答案】 B 【试题解析】 关系数据库中检索操作涉及的 3种关系运算包括选择、投影和连接;选项 B)中的比较不属于关 系运算。 13 【正确答案】 C 【试题解析】 在 Visual FoxPro中,项目中的文件并不是项目的一部分,每个文件都是独立存在的,项目所包含的文件只能表示该文件与项目之间存在着一种联系,通过项目管理器可以方便地对项目中的文件进行修改、运行等操作,删除项目时,不会
30、影响到项目管理器中的文件。 14 【正确答案】 B 【试题解析】 VFP将定义的子类保存在扩展名为 vcx的可视类库文件中,一个类库文件中可以保存多个自定义子类。 prg是程序文件扩展名, pjx是项目文件扩展名, scx是 表单文件扩展名。 15 【正确答案】 B 【试题解析】 本题中 X的变量值为日期时间型 (T),以花括号为定界符; Y的变量值为逻辑型 (L),以两个句点为定界符; Z的变量值为字符型 (C),以半角状态下的双引号、单引号或中括号为定界符。内存变量另外还有 3种数据类型,分别是数值型 (N)、日期型 (D)和货币型 (Y)。 16 【正确答案】 A 【试题解析】 “前字符
31、型表达式 $后字符型表达式 ”为字串包含测试,如果前者是后者的一个子字符串,结果为逻辑真 ( TI),否则为逻辑假 ( F ),本题中 “123”是包含在 “1234”中的,故选项 A)的值为逻辑真 ( T )。 AT(字符表达式 1,字符表达式 2 ,数值表达式 )的函数值为数值型。如果字符表达式 1是字符表达式 2的子串,则返回字符表达式 1值的首字符在字符表达式 2值中的位置;若不是子串,则返回 0。数值表达式用于表示要在字符表达式 2值中搜索字符表达式 1值的第几次出现,其默认值是 1。 用双等号运算符 “=”比较两个字符串,只有当两个字符串完全相同(包括空格以及各字符的位置)时,运算
32、结果才会是逻辑真 ( T )。 用单等号 运算符 “=”比较两个字符串时,运算结果与 SET EXACT ON/OFF设置有关,该命令是设置是否精确匹配的开关。该命令可以在命令窗口或在程序中执行,也可以通过 “数据 ”选项卡设置。 当处于 OFF状态时,只要右边的字符串与左边字符串的前面部分内容相匹配,即可得到逻辑真 ( T )的结果。也就是说,字符串的比较以右面的字符串为目标,右字符串结束即终止比较。 当处于 ON状态时,比较到两个字符串全部结束,先在较短字符串的尾部加上若干个空格,使两个字符串的长度相等,然后再进行比较。 17 【正确答案】 D 【试题解析】 DO WHILE一 ENDDO
33、语句的格式: DO WHILE条件 命令序列 ENDDO 执行该语句时,先判断 DO WHILE处的循环条件是否成立,如果条件为真,则执行 DO WHILE与 ENDDO之间的命令序列(循环体)。当执行到 ENDDO时,返回到 DO WHILE,再次判断循环条件是否为真,以确定是否再次执行循环体。若条件为假,则结束该循环语句,执行 ENDDO后面的语句。 先将 1赋给变量 i,然后进入 DO WHILE循环结构,判断条件是变量 X是否小于等于 3,如果大于 3,则退出循环,否 则执行循环体,通过 INT(取整函数)取得i除以 2的值的整数部分,判断该整数部分是否等于 i除以 2的值,如果不相等
34、,则输出 “fox”,然后在同一行输出 “pro”,再执行 i=i+2,重复此循环体的操作。 所以 i=1时, INT(i/2)=0, i/2一 0 5,输出 “fox”,然后输出 “pro”,执行 i=i+2,此时 i=3, INT(i/2)=1, i/2=1 5,这两个值不相等,输出 “fox”,然后在同一行输出 “pro”,当再次执行 i1+2,此时 i=5, i的值大于 3退出循环。 18 【正确答案】 C 【试题解 析】 先将 a和 b分别赋值,变量 i使用 LEN函数取得字符串变量 a的长度,该变量包含 6个字母,所以它的长度为 6,即 i=6;接着使用一个 DO WHILE循环语
35、句来操作,判断条件是变量 i是否大于等于 1,如果小于 1,则退出循环,否则执行循环体,此时 SUBSTR(“foxpro“, 6, 1)的值为 “o”(从“foxpro”字符串的第 6位开始取一位字符);执行 1=1一 1后, i=5,第一次循环结束;重复此循环体的操作,变量 b的值依次为 o、 or、 orp、 orpx、 orpxo、orpxof,最后 i l,退出循环体。 SUBSTR(字符表达式,起始位置 ,长度 )从指定表达式值的指定起始位置取指定长度的子串作为函数值,若缺省第 3个参数长度,则函数从指定位置一直取到最后一个字符。 19 【正确答案】 C 【试题解析】 在主程序中,
36、执行程序 PROGl;程序 PROG1中把初始值 2赋给变量 X, X是私有变量(在程序中直接使用,没有通过 public或 local命令事先声明的是私有变量),它的作用范围是建立它的模块及其下属的各层模块,然后运行程序 PROG2,在程序 PROG2执行 X=X+3,执行完毕后,变量 X的值为 5,接着返 回到程序 PROG1输出。所以程序的运行结果是 5。 20 【正确答案】 B 【试题解析】 在 SQL中,删除记录的命令是: DELETE FROM表名WHERE条件。 21 【正确答案】 B 【试题解析】 PACK命令的作用是:物理删除当前表中有删除标记的记录。 22 【正确答案】 B
37、 【试题解析】 与表名相同的结构化复合索引在打开表时都能够自动打开,并且在添加、更改或删除记录时自动维护索引,但是对于非结构索引(包括单一索引文件、非默认名的 cdx索引)必须在使用之前打开索引 文件。 23 【正确答案】 B 【试题解析】 在设置两个数据表的参照完整性之前,要先设置两个表的联系,在父表的连接字段上建立主索引,在子表的连接字段上建立普通索引。 24 【正确答案】 D 【试题解析】 在数据库表中,可以为表的字段指定默认值、输入掩码、有效性规则、标题和添加注释,也可以使用长表名和长字段名;而在自由表中,不具备数据库表的这些特点。 25 【正确答案】 C 【试题解析】 当临时联系不再
38、需要时可以取消,命令: SET RELATION TO,将取消当前表到所有表的临 时联系。 如果只是取消某个具体的临时联系,应该使用命令: SET RELATION OFF INTO nWorkArea | cTableAlias 建立临时联系的命令是: SET RELATION TO eExpressionNTOn WorkArea | cTableAlias 26 【正确答案】 D 【试题解析】 在 SQL的 WHRER子句的条件表达式中,字符串匹配的运算符是LIKE,通配符 “ ”表示 0个或多个字符,另外还有一个通配符 “”表示一个字符。 27 【正确答案】 D 【试题 解析】 STR
39、(数值表达式 )的功能是将数值表达式的值转换成字符串,本题中的 “+”是字符串连接符,将 3个字段表达式按分组的级别顺序连接在一起,构成多重索引,实现多级分组。 28 【正确答案】 D 【试题解析】 文本框控件的 PASSWORDCHAR属性用来指定文本框内是显示用户输入的字符、占位符,还是用来指定用作占位符的字符。本题所要指定口令文本框的占位符为 “*”,因此应使用 PAS SWORDCHAR属性。 THISFORM表示当前表单。 29 【正确答案】 C 【试题解析】 页框控件中页 面个数的属性是 PageCount。 Page属性是一个数组,用于存取页框中的某个页对象; ButtonCou
40、nt属性可用于指定选项组或命令按钮组中按钮的数目; ColumnCount属性指定表格的列数,也即一个表格对象所包含的列对象数目。 30 【正确答案】 A 【试题解析】 容器类控件可以包容其他的控件或容器,例如表单、表格、页框等;标签、文本框和组合框都属于非容器类控件。 31 【正确答案】 A 【试题解析】 列表框提供一组条目,用户可以从中选择一个或多个条目。组合框也是用于提供一组条目供 用户从中选择,但只有一个条目是可见的,并且不提供多重选择的功能。 32 【正确答案】 A 【试题解析】 视图是根据一个或多个基本表派生出来的,所以把它叫做虚拟表。在关系数据库中,视图始终不曾真正地含有数据,它
41、总是原来表的一个窗口。在视图中,不但可以进行查询,还可以对数据表进行更新。视图可以与表进行连接操作。 33 【正确答案】 A 【试题解析】 数据环境中能够包含与表单有联系的表和视图以及它们之间的关系。当表从数据环境中移去时,与这个表有关的所有关联也将随之消失。 34 【正确答案】 A 【试题解析】 如果要去掉查询结果中的重复值,只需要使用 DISTINCT短语。 35 【正确答案】 B 【试题解析】 SQL语句中可包含特殊运算符,其中用来定义一个区间范围的运算符是 BETWEENAND 。 36 【正确答案】 D 【试题解析】 本题要查询金额最大的 10订单的信息,应该是按金额从高到低降序排列
42、,另外只需要满足条件的前若干记录,应使用 TOP短语,再使用PERCENT短语,显示结果中前百分之几的记录。 37 【正确答案】 B 【试题解析】 查询订单的平 均金额在 200元以上,可用平均函数为 AVG(金额 )200表示,故可排除选项 A)和选项 D);订单数在 3个以上和订单的平均金额 200元以上两个条件都是分组限定条件,须放在 HAVING子句中。 38 【正确答案】 A 【试题解析】 显示 2005年 1月 1日后签订订单,表示方法为:签订日期2005一 1一 1,故排除选项 C)和选项 D)。两个表使用 JOIN连接,连接条件应使用 ON。 39 【正确答案】 B 【试题解析
43、】 题目中给出的 SELECT语句是查找出姓名为 “李二 ”的职员签订的订单号、签订 日期和金额。选项 B)中,使用 EXISTS谓词来检查子查询中是否有结果返回,它的查询过程是:外查询中,在订单表中从第一条记录开始取出当前职员号,再在内查询中,针对该职员号,在职员表中逐条记录判断是否存在符合 WHERE条件的记录,如果存在,则在外查询的订单表中找到该职员号对应的订单号、签订日期和金额;然后依次类推,在订单表中从第二条记录中取出当前职员号,再在内查询中进行判断,直到将订单表中的所有记录都处理完毕。 40 【正确答案】 C 【试题解析】 删除记录的 SQL命令是: DELETE FROM表名 W
44、HERE条件表达式 。 二、基本操作题 41 【正确答案】 (1) 启动报表向导可通过 “文件 ”菜单中选择 “新建 ”子菜单或者单击工具栏上的 “新建 ”按钮,打开 “新建 ”对话框,文件类型选择 “报表 ”。 单击 “向导 ”图标按钮,弹出 “向导选取 ”对话框,选择 “报表向导 ”,单击 “确定 ”按钮,如图449所示。 单击 “确定 ”按钮后,弹出 “报表向导 步骤 1”对话框,单击 “自由表 ”后面的按钮,找到 “职工 ”表并打开,如图 450所示。 把 “可用字段 ”列表框中的 5个字段全部移动到右边的 “选定字段 ”列表框,完成字段的 选取。 字段选取完成后,单击 “下一步 ”按
45、钮,进入步骤 2,保持默认值,继续单击 “下一步 ”按钮进入步骤 3,报表样式选择 “简报式 ”,如图 451所示。 单击 “下一步 ”按钮,进入步骤 4,采取默认设置,不需要改动。单击 “下一步 ”按钮,进入步骤 5,设置排序,按 “职工号 ”升序排列,如图 452所示。 单击 “完成 ”按钮,弹出另存为对话框,输入报表文件名 “one frx”,保存到考生文件夹。 (2) 建立菜单可以使用菜单命令的方式,选择 “文件 ”菜单下的 “新建 ”自命令,弹出 “新建 ”对话框,文件类型选择 “菜单 ”。 单击 “新建文 件 ”图标按钮弹出 “新建菜单 ”对话框,单击“菜单 ”图标按钮,打开菜单设
46、计器。 在菜单设计器中建立各菜单项,菜单名称分别为: “打开文件 ”、 “关闭文件 ”和 “退出 ( R)”。 单击菜单工具栏的 “保存 ”按钮,弹出 “另存为 ”对话框,输入菜单名为: mymenu mnx,保存到考生文件夹。 选择 “菜单 ”菜单中的 “生成 ”子菜单,然后在 “生成菜单 ”对话框中指定菜单程序文件的名称和存放路径,最后单击 “生成 ”按钮生成菜单程序。 (3) 创建数据可以使用 “文件 ”菜单来完成,选择 “文件 ”菜单下的 “新建 ”子菜单。 文件类型选择 “数据库 ”,单击 “新建文件 ”图标按钮,弹出 “创建 ”对话框,输入数据库名: mydata,dbc,保存到考
47、生文件夹。 接下来在数据库设计器中添加 “教师 ”表,单击数据库设计器工具栏的 “添加表 ”按钮,弹出 “打开 ”对话框,选取 “教师 ”表并打开,完成数据表的添加。 (4) 建立菜单可以使用菜单命令的方式,选择 “文件 ”菜单下的 “新建 ”自命令,弹出 “新建 ”对话框,文件类型选择 “程序 ”。 单击 “新建文件 ”图标按钮打开程序编辑界面。 输入建立 “学生 ”表的命令: create table 学生 (学号 c(10) primary key,姓名 c(16),年龄 i) 单击菜单工具栏的 “保存 ”按钮,弹出 “另存为 ”对话框,输入程序名为: mypro prg,保存到考生文件
48、夹。本体考查创建报表、设计菜单、创建数据库和使用 SQL。 【试题解析】 本大题考查了报表设计、菜单设计器的使用、数据库设计器的操作和 SQL。 新建项目可以通过菜单或者命令的方式。通过菜单设计器来创建的菜单,生成一个菜单定义文件 ( MNx),存储了菜单系统的各项定义。 本题的 SQL比较简单,使用 create来创建表,表中有学号、姓名和年龄三个字段,类型分别为 c(10、 c(16)和整型, 其中学号是主键。 三、简单应用题 42 【正确答案】 (1)步骤 1:单击菜单工具栏里面的 “新建 ”按钮,弹出 “新建 ”对话框,选择 “程序 ”单选按钮。步骤 2:单击 “新建 ”对话框里面的
49、“新建文件 ”图表按钮,打开程序编辑界面,输入代码: SELECT职工,编号,职工姓名 as姓名,职工出生日期,部门名称 as部门名称; FROM人事管理!部门 INNER JOIN人事管理!职工; ON部门部门编号 =职工部门编号; WHERE year(职工出生日期) =1985; AND year(职工出生日期) =1989; AND部门名称 =“销售部 “; GROUP BY职工编号; ORDER BY职工出生日期,职工,编号;INTO TABLE cyqk dbf步骤 3:单击菜单工具栏的 “保存 ”按钮来保存程序,弹出另存为对话框,输入程序文件名为 “prgone prg”,单击 “保存 ”按钮。运行程序。程序设计和 SQL语句。 (