1、国家二级( VF)机试模拟试卷 87及答案与解析 一、选择题 1 算法的空间复杂度是指 ( )。 ( A)算法程序的长度 ( B)算法程序中的指令条数 ( C)算法程序所占的存储空间 ( D)算法执行过程中所需要的存储空间 2 下列叙述中正确的是 ( )。 ( A)一个逻辑数据结构只能有一种存储结构 ( B)逻辑结构属于线性结构,存储结构属于非线性结构 ( C)一个逻辑数据结构可以有多种存储结构,且各种存储结构不影响数据处理的效率 ( D)一个逻辑数据结构可以有多种存储结构,且各种存储结构影响 数据处理的效率 3 下列关于类、对象、属性和方法的叙述中,错误的是 ( )。 ( A)类是对一类具有
2、相同的属性和方法对象的描述 ( B)属性用于描述对象的状态 ( C)方法用于表示对象的行为 ( D)基于同一个类产生的两个对象不可以分别设置自己的属性值 4 在软件开发中,需求分析阶段产生的主要文档是 ( )。 ( A)数据字典 ( B)详细设计说明书 ( C)数据流图说明书 ( D)软件需求规格说明书 5 数据库设计的四个阶段是:需求分析、概念设计、逻辑设计和 ( )。 ( A)编码 设计 ( B)测试阶段 ( C)运行阶段 ( D)物理设计 6 在下列关系运算中,不改变关系表中的属性个数但能减少元组个数的是 ( )。 ( A)并 ( B)交 ( C)投影 ( D)除 7 下列叙述中,正确的
3、是 ( )。 ( A)软件交付使用后还需要进行维护 ( B)软件一旦交付使用就不需要再进行维护 ( C)软件交付使用后其生命周期就结束 ( D)软件维护是指修复程序中被破坏的指令 8 设一棵满二叉树共有 15个结点,则在该满二叉树中的叶子结点数为 ( )。 ( A) 7 ( B) 8 ( C) 9 ( D) 10 9 设 R是一个 2元关系,有 3个元组, S是一个 3元关系,有 3个元组。如 T一RS,则 T的元组的个数为 ( )。 ( A) 6 ( B) 8 ( C) 9 ( D) 12 10 下列选项中,不属于数据库管理的是 ( )。 ( A)数据库的建立 ( B)数据库的调整 ( C)
4、数据库的监控 ( D)数据库的校对 11 VFP DBMS是 ( )。 ( A)操作系统的一部分 ( B)一种编译程序 ( C)操作系统支持下的系统文件 ( D)一种操作系统 12 在 Visual FoxPro中,用来移动表单的方法是 ( )。 ( A) Hide ( B) Move ( C) SetFocus ( D) Release 13 项目管理器的 “数据 ”选项卡用于显示和管理 ( )。 ( A)数据库、自由表和查询 ( B)数据库、视图和查询 ( C)数据库、自由表和报表 ( D)数据库、表单和查询 14 以下函数返回结果为数值型的是 ( )。 ( A) TRIM(“等级考试 “
5、) ( B) OCCURS(“ab“ “abcab“) ( C) SUBSTR(“abcc“, 2, 2) ( D) LIKE(“AB“,AbC“) 15 下列关于下拉菜单和快捷菜单的说法中,错误的是 ( )。 ( A)下拉菜单由条形菜单和弹出式菜单组成 ( B)快捷菜单只包括弹出式菜单 ( C)快捷菜单比下拉菜单运行要快 ( D) VisualFoxPro系统菜单就是一个典型的下拉式菜单 16 若将过程放在过程文件中,可在应用程序中使用下列哪条命令打开过程文件( )。 ( A) SET ROUTINE TO文件名 ( B) SET PROCEDURE TO文件名 ( C) SET PROGR
6、AM TO文件名 ( D) SET FUNCTION TO文件名 17 要设置日期时间型数据中的年份用 4位数字显示,应使用下列哪条命令 ( )。 ( A) SET CENTURY ON ( B) SET CENTURY OFF ( C) SET CENTURY TO 4 ( D) SET CENTURY ON 4 18 假设在数据库表的表设计器中,字符型字段 “性别 ”已被选中,正确的有效性规则设置是 ( )。 ( A) =“男 “ OR “女 “ ( B)性别 =“男 “ OR “女 “ ( C) $“男女 “ ( D)性别 $“男女 “ 19 执行如下程序,最后 S的显示值为 ( )。
7、sum=0 k=1 m=5 DO WHILE sum =m sum=sum+k k=k+1 ENDDO ?sum ( A) 1 ( B) 3 ( C) 6 ( D) 10 20 设当前打开了 “教师 ”表文件,要列出 “职称 ”为 “教授 ”的教师 “姓名 ”的命令是( )。 ( A) LIST教师姓名 WHERE职称 =“教授 “ ( B) LIST教师姓名 FOR职称 =“教授 “ ( C) LIST教师姓名 FOR职称 SET“教授 “ ( D) LIST教师姓名 WHERE职称 FOR“教授 “ 21 用命令 “INDEX ON姓名 TAGindex_ name”建立索引,其索引类型是
8、 ( )。 ( A)主索引 ( B)候选索引 ( C)普通索引 ( D)惟一索引 22 “主键 ”不允许取重复值,是指 ( )。 ( A)实体完整性约束规则 ( B)引用完整性约束规则 ( C)用户自定义完整性约束规则 ( D)数据完整性约束规则 23 使数据库表变为自由表的命令是 ( )。 ( A) DROP TABLE ( B) REMOVETABLE ( C) FREE TABLE ( D) RELEASE TABLE 24 执行下列一组命令后,选择 “职工 ”表所在工作区的错误命令是 ( )。 CLOSE ALL USE 仓库 IN O USE 职工 IN O ( A) SELECT职
9、工 ( B) SELECTO ( C) SELECT2 ( D) SELECTB 25 在 “报表设计器 ”中,可以使用的控件是 ( )。 ( A)标签、矩形和线条 ( B)文本框和列表框 ( C)布局和数据源 ( D)标签、域控件和列表框 26 在一个空的表单中添加一个选项按钮组控件,该控件可能 的默认名称是 ( )。 ( A) Optiongroupl ( B) Checkl ( C) Spinnerl ( D) Listl 27 下列程序段的输出结果是 ( )。 Clear store 10 to a store 20 tob set udfparms to reference do s
10、wapwith a, (b) ?a,b procedure swap parameters x1, x2 temp= xl x1=x2 x2=temp endproc ( A) 20 10 ( B) 10 10 ( C) 20 20 ( D) 10 20 28 在 Visual Foxpro中,如果希望一个内存变量只限于在本过程中使用,说明这种内存变量的命令是 ( )。 ( A) PUBLIC ( B) PRIVATE ( C) LOCAL ( D)在程序中直接使用的内存变量(不通过选项 A)、选项 B)、选项 C)说明) 29 在 Visual FoxPro中,表单 (Form)是指 ( )
11、。 ( A)数据库中各个表的清单 ( B)窗口界面 ( C)数据库查询的列表 ( D)一个表中各个记录的清单 30 下列关 于 SQL对表的定义的说法中,不正确的选项是 ( )。 ( A)利用 CREATE TABLE可以定义一个新的数据表结构 ( B) SQL的表定义语句定义自由表的域完整性、字段有效性规则等 ( C) SQL定义语句对数据库表实现其完整性、有效性规则等信息的设置 ( D) SQL定义语句可以创建数据库表的主索引 31 下面是关于表单数据环境的叙述,其中错误的是 ( )。 ( A)数据环境是表单的容器 ( B)可以在数据环境中建立表之间的联系 ( C)表单运行时自动打开其数据
12、环境中的表 ( D)可以在数据环境 中加入与表单操作有关的表 32 新创建的表单默认标题为 Forml,为了修改表单的标题,应设置表单的 ( )。 ( A) Name属性 ( B) AlwaysOnTop属性 ( C) Caption属性 ( D) Closable属性 33 对于许多控件来说,可以通过 ControlSource属性与数据绑定。在下列 VFP对象中,无 ControlSource属性的是 ( )。 ( A)标签 (Label) ( B)组合框 (Combox) ( C)选项按钮组 (OptionGroup) ( D)列表框 (List) 34 打开报表设计器的命令是 ( )。
13、 ( A) CREATE REPORT ( B) NEW REPORT ( C) REPORT FORM ( D) START REPORT 35 在 Visual FoxPro中,在数据库中创建表的 CREATETABLE命令中定义主索引、实现实体完整性规则的短语是 ( )。 ( A) FOREIGNKEY ( B) DEFAULT ( C) PRIMARY KEY ( D) CHECK 36 根据 “歌手 ”表建立视图 myview,视图中含有 “歌手号 ”左边第一位是 “1”的所有记录,正确的 SQL语句是 ( )。 ( A) CREATE VIEW myview AS SELECT*F
14、ROM歌手 WHERE LEFT(歌手号,1)=“1“ ( B) CREATE VIEW myview AS SELECT*FROM歌手 WHERE LIKE(“1“,歌手号 ) ( C) CREATE VIEW myview SELECT*FROM歌手 WHERE LEFT(歌手号, 1)=“1“ ( D) CREATE VIEW myview SELECT木 FROM歌手 WHERE LIKE(“1“,歌 手号 ) 37 用 SQL命令查询哪些考点至少有一个考场的考试成绩为 70分,正确的命令是( )。 ( A) SELECT考场 FROM考点 WHERE准考证号 IN;(SELECT准考
15、证号 FROM考生信息 WHERE分数 =70) ( B) SELECT考场 FROM考点 WHERE准考证号 IN;(SELECT准考证号 FOR考生信息 WHERE分数 =70) ( C) SELECT考点 FROM考场 WHERE准考证号 IN;(SELECT准考证号 FROM考生信息 WHERE分数 =70) ( D) SELECT考点 FROM考场 WHERE准考证号 IN;(SELECT准考证号 FOR考生信息 WHERE分数 =70) 37 使用如下三个表: 部门 dbf:部门号 C(8),部门名 C(12),负责人 C(6) 职工 dbf:部门号 C(8),职工号 C(10),
16、姓名 C(8),性别 C(2),出生日期 D(8) 工资 dbf:职工号 C(10),基本工资 N(8 2),津贴 N(8 2),奖金 N(8 2) 38 查询每个部门年龄最小者的信息,要求得到的信息包括部门名和最长者的出生日期。正确的命令是 ( )。 ( A) SELECT部门名, MIN(出生日期 )FROM部门 JOIN职工; WHERE部门部门号 =职工部门号 GROUP BY部门名 ( B) SELECT部门名 MIN(出生日期 )FROM部门 JOIN职工; ON部门,部门号=职工部门号 GROUP BY部门名 ( C) SELECT部门名, MAX(出生日期 )FROM部门 JO
17、IN职工; ON部门部门号=职工部门号 GROUP BY部门名 ( D) SELECT部门名, MAX(出生日期 )FROM部门 JOIN职工; 39 查询所有目前年龄在 25岁以下(不含 25岁)的职工信息(姓名、性别和年龄),正确的命令是 ( )。 ( A) SELECT姓名,性别, YEAR(DATE()一 YEAR(出生日期 )年龄 FROM职I;WHERE年龄 25 ( B) SELECT姓名,性别, YEAR(DATE()一 YEAR(出生日期 )年龄 FROM职工: WHERE YEAR(出生日期 ) 25 ( C) SELECT姓名,性别, YEAR(DATE()一 YEAR(
18、出生日期 )年龄 FROM职工: WHERE YEAR(DATE()一 YEAR(出生日期 ) 25 ( D) SELECT姓名,性别,年龄 =YEAR(DATE()一 YEAR(出生日期 )FROM职工; WHERE YEAR(DATE()一 YEAR(出生日期 ) 25 40 连编应用程序不能生成的文件是 ( )。 ( A) app文件 ( B) exe文件 ( C) dll文件 ( D) prg文件 二、基本操作题 41 (1)新建一个项目 myproj ect,然后再在该项目中建立一个数据库 mybase。 (2)将考生文件夹下的 3个自由表全部添加到新建的 mybase数据库。 (3
19、)利用 SQL ALTER语句为 orderitem表的 “数量 ”字段设置有效性规则:字段值必须大于零,然后把 该 SQL语句保存在 sone prg文件中。 (4)在新建的项目 myproj ect中建立一个表单,并将其保存为 myform scx(不要做其他任何操作)。 三、简单应用题 42 (1)编写 SELECT语句,从 orders(订单)表中统计 2007年各月份签订的订单数。统计结果依次包含 “月份 ”和 “订单数 ”两个字段,并按月份升序排序,统计结果存放在 tableone表中。最后要执行该 SELECT语句,并将该 SELECT语句存放在命令文件 pone prg中。 (
20、2)首先创建数据库 goods_m,并向其中添加 goods(商品)表。然后在数据库中创建视图 viewone:利用该视图只能查询单价大于等于 2000且库存量小于等于 2、或者单价小于 2000且库存量小于等于 4的商品信息,查询结果依次包含商品号、商品名、单价和库存量四项内容,各记录按商品号升序排序。最后利用该视图查询视图中的全部信息,并将查询结果存放在表 tabletwo中。 四、综合应用题 43 在考生文件夹下完成如下综合应用: (1)建立数据库 “订单管理 ”。 (2)将表 order、 goods和 orderitem添加到 “订单管理 ”数据库。 (3)在 “订单管理 ”数据库中
21、创建视图 orderview,该视图包含信息:客户名、订单号、图书名、数量、单价和金额(单价 数量)。 (4)建立文件名和表单名均为 orderform的表单,在表单中添加表格控件 gridl(将RecordSourceType属性设置为 “表 ”)和命令按钮 “退出 ”( commandl)。 (5)在表单的 load事件中使用 SQL语句从视图 orderview中按客户名升序、金额降序查询数量为 1的客户名、图书名和金额信息,并将结果存储到表文件result dbf。 (6)在表单运行时使得在控件 gridl中能够显 示表 result dbf中的内容 (在相应的事件中将 gridl的
22、recordsource属性指定为 result dbf)。 (7)单击 “退出 ”命令按钮时释放并关闭表单。 完成以上所有功能后运行表单 orderform。 国家二级( VF)机试模拟试卷 87答案与解析 一、选择题 1 【正确答案】 D 【试题解析】 算法的空间复杂度是指执行这个算法所需要的内存空间。一个算法所占用的存储空间包括算法程序所占的空间、输入的初始数据所占的存储空间以及算法执行中所需要的额外空间。其中额外空间包括算法程序执行过程 中的工作单元以及某种数据结构所需要的附加存储空间。如果额外空间量相对于问题规模来说是常数,则称该算法是原地工作的。在许多实际问题中,为了减少算法所占的
23、存储空间,通常采用压缩存储技术,以便尽量减少不必要的额外空间。 2 【正确答案】 D 【试题解析】 数据的存储结构是指数据的逻辑结构在计算机存储空间中的存放形式,一种数据结构可以根据需要采用不同的存储结构,常用的存储结构有顺序和链式结构。采用不同的存储结构,其处理的效率是不同的。 3 【正确答案】 D 【试题解析】 类是对一类具有相同的属性 和方法对象的描述,属性用于描述对象的状态,方法用于表示对象的行为,基于同一个类产生的两个对象是可以分别设置自己的属性值的。 4 【正确答案】 D 【试题解析】 需求分析的最终结果是生成软件需要规格说明书,可以为用户、分析人员和设计人员之间的交流提供方便。
24、5 【正确答案】 D 【试题解析】 数据库设计目前一般采用生命周期法,即将整个数据库应用系统的开分解成目标独立的若干阶段,它们是:需要分析阶段、概念设计阶段、逻辑设计阶段、物理设计阶段、编码阶段、测试阶段、运行阶段、进一步修改阶段。在数 据库设计中采用上面几个阶段中的前四个阶段,并且重点以数据结构和模型设计为主线。 6 【正确答案】 B 【试题解析】 关系 R与 S经交运算后所得到的关系是由那些既在 R内又在 S内的有序组所组成,记为 RS,交运算不改变关系表中的属性个数但能减少元组个数。 7 【正确答案】 A 【试题解析】 软件的运行和维护是指将己交付的软件投入运行,并在运行使用中不断地维护
25、,根据新提出的需求进行必要而且可能的扩充和删改。而软件生命周期是指软件产品从提出、实现、使用维护到停止使用退役的过程。 8 【正确答案 】 B 【试题解析】 在具有 n个结点的满二叉树,其非叶子结点数为 int(n/2),而叶子结点数等于总结点数减去非叶子结点数。本题 n=15故非叶子结点数等于int(15/2)=7,叶子结点数等于 15一 7=8。 9 【正确答案】 C 【试题解析】 R为 n元关系,有 p个元组 S为 m元关系,有 q个元组。两个关系笛卡儿积是一个 n+m元的关系,元组个数是 qp。所以 T的元组的个数为 9个。 10 【正确答案】 D 【试题解析】 数据库管理一般包括:数
26、据库的建立、数据库的调整、数据库的重组、数据库 的安全性控制与完整性控制、数据库的故障恢复和数据库的监控。 11 【正确答案】 C 【试题解析】 VFP DBMS是一种系统软件,它提供了数据库操作的系统环境,支持 APP和 EXE应用程序,而它自身又需要操作系统的支持,所以准确的说法应是 “VFP DBMS是操作系统支持下的系统文件 ”。 12 【正确答案】 B 【试题解析】 Hide方法用来隐藏表单, Move方法用来移动表单, SetFocus方法用来让控件获得焦点,使其称为活动对象, Release方法用来释放和关闭表单。 13 【正 确答案】 A 【试题解析】 项目管理器中共有 6个选
27、项卡: “全部 ”选项卡。把后 5个分类项全部列在一起; “数据 ”选项卡。包含了一个项目中的所有数据:数据库、自由表和查询; “文档 ”选项卡。包含了处理数据时所用的全部文档:输入和查看数据所用的表单,以及打印表和查询结果所用的报表和标签; “类 ”选项卡。包含了表单和程序中所用的类库和类; “代码 ”选项卡。包含了程序、 API库和二进制应用程序; “其他 ”选项卡。包含了菜单文件、文本文件和其他文件(如位图、图标等)。 14 【正确答案】 B 【试题解析】 TRIM()函数返回指定字符表达式去掉尾部空格后形成的字符串。OCCURS(字符表达式 1字符表达式 2)函数返回第一个字符串在第二
28、个字符串中出现的次数,函数值为数值型。 SUBSTR()函数从指定表达式值的指定起始位置取指定长度的子串作为函数值。 LIKE(字符表达式 1字符表达式 2)函数比较两个字符串对应位置上的字符,若所有对应字符都相匹配,函数返回逻辑真,否则返回逻辑假。 15 【正确答案】 C 【试题解析】 下拉菜单是由条形菜单和弹出式菜单组成, Visual FoxPro系统菜单就是一个典型的下拉式菜单。与下拉式菜单相比,快捷菜单没有条形菜单,只有弹出式菜单。快捷菜单一般是一个弹出式菜单,或是由几个具有上下级关系的弹出式菜单组成。 16 【正确答案】 B 【试题解析】 一般情况下,过程保存在称为过程文件的单独文
29、件里。过程文件包含的过程数量不限。过程文件的建立仍使用 MODIFY COMMAND命令,文件的默认扩展名还是 PRG。要调用过程文件中的过程,首先要打开过程文件。打开过程文件的命令格式是: SET PROCEDURE TO过程文件 1 ,过程文件 2 ,ADDITIVE 可以打开一个或多个过程文件。一旦一个过程文件被打开,那么该过程文件中的所有过程都可以被调用。 17 【正确答案】 A 【试题解析】 利用以下命令可以设置日期的显示年份。 SET CENTURY ON IOFFI(TO世纪值 ROLLOVER年份参照值 ) 其中, SET CENTURY:表示固定的命令格式,不能缺省; ON
30、IOFFI(TO世纪值 :表示可以选择其中任意一个短语,一条命 令仅且只能选择 1项,不能缺省。 ON显示世纪,用 4位数字表示年份。 OFF不显示世纪值,用 2位数字表示年份。 TO选项确定用 2位数字表示年份所处的世纪,具体地说,如果该日期的 2位数字年份大于等于 年份参照值 ,则它所处的世纪即为 世纪值 ;否则为 世纪值 +1。 世纪值和年份参照值部分由用户提供。 18 【正确答案】 D 【试题解析】 前字符型表达式 $后字符型表达式为子串包含测试函数,如果前者是后者的一个子字符串,结果为逻辑真 ( T ),否则为逻辑假 ( F )。选项 A)、 B)、 C)的表达式写法错误。 19 【
31、正确答案】 C 【试题解析】 DO WHILEENDDO 语句的格式: DO WHILE条件命令序列 ENDDO执行该语句时,先判断 DO WHILE处的循环条件是否成立,如果条件为真,则执行 DO WHILE与 ENDDO之间的命令序列(循环体)。当执行到 ENDDO时,返回到 DOWHILE,再次判断循环条件是否为真,以确定是否再次执行循环体。若条件为假,则结束该循环语句,执行 ENDDO后面的语句。先给三个变量赋初始值,使用一个 DO WHILE循环语句来操作,判断条件是变 量sum是否小于等于 m,如果大于 m,则退出循环,否则执行循环体内的语句sum=sum+k和 k=k+1。题干中
32、的循环步骤及结果见表 4一 1。所以 sum最终的显示值是 6。 20 【正确答案】 B 【试题解析】 ¥在 Visual FoxPro中,显示表中记录的命令格式为: LISTFIELDS字段名表 FOR条件表达式 其中, FIELDS指定显示记录的范围,默认显示全部记录;用逗号分隔的字段名列表给出了要显示的字段,默认显示全部字段; FOR指对满足条件的记录进行操作。 21 【正确 答案】 C 【试题解析】 建立索引的命令是 INDEX,具体格式如下: INDEX ON eExpression TO IDXFileName| TAGTagNameOF CDXFileName FOR IExpr
33、essionCOMPACT ASCENDNG|DESCENDING UNIQUE|CANDIDATE ADDITIVE 其中参数或选项的含义如下: eExpression是索引表达式,它可以是字段名,或包含字段名的表达式。 TO IDXFileName建立一个单独 的索引文件, IDXFileName是扩展名为 idx的文件,该项是为了与以前版本兼容,现在一般只是在建立一些临时索引时才使用。 TAG TagName中的 TagName给出索引名。多个索引可以创建在一个索引文件中,这种索引称做结构复合索引,其文件名与相关的表同名,并有 cdx扩展名。 如果选用 OF短语,则可以用 CDXFile
34、Name指定包含多个索引的复合索引文件名,扩展名也是 cdx。 FOR IExpression给出索引过滤条件,指索引满足条件的记录,该选项一般不使用。 COMPACT当使用 TO IDXFileName时说明建立一个压缩的 idx文件,复合索引总是压缩的。 ASCENDING或 DESCENDING说明建立升序或降序索引,默认升序。 UNIQUE说明建立惟一索引。 CANDIDATE说明建立候选索引。 22 【正确答案】 A 【试题解析】 实体完整性是保证表中记录惟一的特性的,也就是说,在一个表中不可以有重复的记录。在 Visual FoxPro中利用主关键字和候选关键字来保证实体完整性。
35、23 【正确答案】 B 【试题解析】 使数据库表变为自由表的命令是: REMOVE TABLE表名 DELETE 如果没有 DELETE项,则指从数据库中把表移出,使之成为自由表。否则,不仅把数据库表移出数据库,而且还把表文件从磁盘上删除。 24 【正确答案】 B 【试题解析】 本题考查如何在不同工作区之间进行切换。在 Visual FoxPro中,SELECT 0是选择一个编号最小且没有使用的空闲工作区。执行题干中两条打开表的命令后, “职工 ”表所在的工作区为 2号工作区。若想在工作区之间切换,可以用 SELECT工作区号来指定工作区,同时也可以用 SELECT工作区别名来指 定工作区,职
36、工表的系统默认的工作区别名是表名和字母 B,因此选项A)、选项 C)和选项 D)都可以实现选择 “职工 ”表所在工作区。 25 【正确答案】 A 【试题解析】 可以在报表和标签布局中插入以下类型报表控件:域控件、标签、线条、矩形、圆角矩形、图片 /ActiveX绑定控件等。 26 【正确答案】 A 【试题解析】 在表单中添加一个控件时,系统给出的默认名称是以控件的英文名命名的,所以在添加一个选项按钮组控件后,默认名称可能是 Optiongroupl。Checkl为可能的复选框控件名称, Spinnerl为可能的微调按钮控件名称, Listl为可能的列表框控件名称。 27 【正确答案】 C 【试
37、题解析】 将参数传送给 UDF有两种方式: 按引用传递方式,是将作为参数的变量和数组元素的地址传递给 LJDF,当参数的值在被调用过程中更改时,新值传递会调用程序中相关的变量或数组元素。 按值传递方式,是把变量和数组元素的值直接传递给 UDF,当 UDF中参数的值发生变化时,原来的变量或数组元素的值不发生变化。 若要按引用方式传递参数,在调用 UDF之前,先执行如下命令: SET UDFPARMS TO REFERENCE;若要按值方式传递参数,在调用 UDF之前,先执行如下命令: SETUDFPARMS TO VALUE。也可以不管 SET UDFPARMS的设置,强制设定以值传递方式或引用
38、传递方式向一个 UDF传递参数:用括号括起一个变量,则设定按值传递。默认情况下,变量以引用传递方式向过程传递,以值传递方式向一个 UDF传递。 28 【正确答案】 C 【试题解析】 在 Visual FoxPro中,根据变量的作用域来分,内存变量可分为私有变量、局部变量和全局变量。全局变量用 PUBLIC说明,是指在任何模 块中都可使用的变量:私有变量是在程序中直接使用(没有通过 PUBLIC和 LOCAL命令事先声明)而由系统自动隐含建立的变量,其作用域是建立变量的模块及其下属的各层模块;局部变量用 LOCAL说明,只能在建立它的模块中使用,不能在上层或下层模块中使用。 29 【正确答案】
39、B 【试题解析】 表单是用户进行面向对象程序设计的窗口界面。 30 【正确答案】 B 【试题解析】 在 SQL的定义功能里,所定义的新数据表结构的内容和在表设计器中定义一个新表的内容一样,可以完成其所有功能,包括主索引、域完整 性的约束、字段有效性规则等,但对于自由表的定义也和在表设计器中一样,都不能定义自由表的主索引、域完整性的约束、字段有效性规则等,只能进行一些最基本的操作,如定义字段名、宽度和类型等。 31 【正确答案】 A 【试题解析】 为表单建立数据环境,可以方便设置控件与数据之间的绑定关系。数据环境中能够包含表单所需要的一些表、视图以及表之间的关联。通常情况下,数据环境中的表、视图
40、和关联会随着表单的运行而打开和建立,并随着表单的关闭或释放而关闭。数据环境不是表单的容器。 32 【正确答案】 C 【试 题解析】 表单的 Caption属性用来指定表单的标题, Name属性用来指定表单的名称, AlwaysOnTop属性指定表单是否总是位于其他打开窗口之上,Closable属性指定是否可以通过单击关闭按钮或双击控制菜单框来关闭表单。 33 【正确答案】 A 【试题解析】 ControlSource属性用来指定所绑定的数据源。标签是显示文本的图形控件,通常用于显示提示信息,它没有绑定的数据源。 34 【正确答案】 A 【试题解析】 打开报表设计器的命令是 CREATEREPO
41、RT, REPORT FORM命令用来打印或预览报表。 35 【正确答案】 C 【试题解析】 CREATE TABLE表的定义命令中各短语的功能: PRIMARY KEY:用于定义满足实体完整性的主索引; CHECKERROR :用于定义域的完整性和出错提示信息; DEFAULT:用于定义默认值; FOREIGN KEYREFERENCES :用于定义表之间的联系; FREE:用于指明所建立的表是一个自由表,不添加到当前数据库中; NULL或 NOT NULL:用于说明属性允许或不允许为空值; UNIQE:用于建立候选索引 ,但不是惟一索引; FROM ARRAY:用于说明根据数组的内容建立表
42、。 36 【正确答案】 A 【试题解析】 建立视图的 SQL命令格式是: CREATE VIEW视图名 AS SELECT语句,故可以排除选项 C)和选项 D),而 “歌手号 左边第一位是 1”应该用 LEFT()函数实现。 37 【正确答案】 C 【试题解析】 题干中要查询的是考点,可排除选项 A)和选项 B),选项 D)中内查询的写法错误,查询的数据来源应用 FROM短语。 38 【正确答案】 C 【试题解析】 SQL语言 的数据查询功能的语法一般格式如下: SELECT目标列表达式 FROM表名 1 1视图名 1 INNE JOIN表名 2 l视图名 1 ON联接条件 FROM数据库名
43、owner 表名 l视图名 , 数据库名 owner 表名 |视图名) WHERE条件表达式 GROUP BY列名 1 HAVING内部函数表达式 ORDER BY列名 2 ASC/DESC 语句的功能是从 FROM子句列出的表 中,按照 WHERE子句中给出的条件,找出满足条件的元组,在按 SELECT子句中给出的目标列表达式,选出元组中的列值形成结果表。 MAX()函数表示求最大值。 39 【正确答案】 C 【试题解析】 通过 YEAR函数计算年龄。年份函数 YEAR日期表达式日期时间表达式),从指定的日期表达式或日期时间表达式中返回年份。函数值为数值型。系统日期函数 DATEO返回当前系
44、统日期,函数值为日期型。 40 【正确答案】 D 【试题解析】 连编应用程序后的结果有两种文件形式,一种是应用程序文件( APP),另一种是可执行文件 ( EXE)。在 “连编选项 ”选项对话框中, “连编COM DLL”是使用项目文件中类信息,创建一个具有 dll文件扩展名的动态链接库。 二、基本操作题 41 【正确答案】 (1)在命令窗口执行命令来创建项目: CREATE PROJECT myproject。 (2) 在项目管理器中选中 “数据 ”选项卡内的 “数据库 ”项,然后单击 “新建 ”按钮,系统弹出 “新建数据库 ”对话框。 单击 “新建数据库 ”图标按钮,在弹出的 “创建 ”对
45、话框的 “数据库名 ”文本框中输入 “mybase”。 单击 “保存 ”命令按 钮将数据库文件保存在考生文件夹下。如图 41所示。(3)在新建的 “mybase”数据库设计器中单击右键,选择【添加表】快捷菜单命令,在弹出的“打开 ”对话框中双击自由表 goods,将表添加到数据库中。如图 42和图 43所示。 以同样方法,将 order表和 orderitem表添加到数据库中。 (4)在命令窗口执行命令来创建程序文件: MODIFYCOMMAND sone prg。 (5)在sone prg中输入 SQL语句,题目要求为 orderitem表的 “数量 ”字段设置有效性规则:字段值必须大于零,
46、因此 SQL为 : ALTER TABLE ORDERITEM ADDCONSTRAINTS RULEEXPRESSION CHECK(数量 0)。 (6)保存 sone prg文件。 (7)在命令窗口执行命令来创建表单: CREATE FORM。 (8)保存表单名为myform。项目文件的建立、数据库文件的建立、数据库表的添加、表单文件的建立。 【试题解析】 本大题考查了项目管理器的基本操作及使用: SQL的使用。 新建项目可以通过菜单、工具栏或命令方式完成:在项目中新建库及向数据库中添加表,可以通过项目管理器右侧的 “新建 ”和 “添加 ”命令按钮完成。 新建数据库可以通过项目管理器、菜单
47、命令或者直接使用命令的方式来创建。表单可通过表单设计器、命令或表单向导来建表单文件。 三、简单应用题 42 【正确答案】 (1)步骤 1:单击 “文件 ”菜单下的 “新建 ”子菜单,弹出 “新建对话框 ”对话框,选择 “程序 (O)”单选按钮,如图 419所示。步骤 2:单击 “新建文件 (N)”按钮,在弹出的程序编辑对话框里面,编写 SQL语句: select month(签订日期)月份, count(*)订单数; from orders where year(签订日期) =2007 group by月份; order by月份 into dbf tableone步骤 3:单击工具栏上的保存
48、铵钮,在 “另存为 ”对话框里面输入文件名:pone prg,然后单击 “保存 ”按钮,完成文件的保存。运行 pone prg。 SQL语句的使用和程序文件的建立。 (2)步骤 1:创建数据库可以使用菜单完成,选择 “文件 ”菜单下面的 “新建 ”子菜单,弹出 “新建对话框 ”对话框,在对话框里面选择 “数据库 ”单选按钮。步骤 2:单击 “新建 ”对话框里面的 “新建文件 ”按钮,弹出 “创建 ”对话框,输入数据库名称 goods_m dbc, 单击 “保存 ”按钮完成数据库的创建,此时会启动数据库设计器。步骤 3:单击数据库设计器工具栏中的 “添加表 ”按钮,弹出 “打开 ”对话框,在考生文件夹下找到 goods表,单击 “确定 ”按钮即在数据库设计器中添加goods表。步骤 4:命令窗口执行 CREATEVIEW命令来创建视图。步骤 5:执行步骤 4的命令后,会打开视图设计器,并弹出 “添加表或视图 ”对话框,选中并添加goods表,如图 420所示,添加 goods数据表后单击 “关闭 ”按钮。步骤 6:在视图设计器里面的 “字段 ”选项卡中选择商品号、商品名、单价和库存量 4个字段。 步骤 7:切换到 “筛选 ”选项卡,按表 47设置筛选条件,设置完成后如图 421所示。步骤 8:切换到 “排序依据 ”选项卡,选择字段 “Goods商品