1、国家二级( VF)机试模拟试卷 4及答案与解析 一、选择题 1 下列各选项中,不属于序言性注释的是( )。 ( A)程序标题 ( B)程序设计者 ( C)主要算法 ( D)数据状态 2 下列模式中,能够给出数据库物理存储结构与物理存取方法的是( )。 ( A)内模式 ( B)外模式 ( C)概念模式 ( D)逻辑模式 3 下列叙述中,不属于软件需求规格说明书的作用的是( )。 ( A)便于用户,开发人员进行理解和交流 ( B)反映出用户问题的结构,可以作为软件开发工作的基础和依 据 ( C)作为确认测试和验收的依据 ( D)便于开发人员进行需求分析 4 下列不属于软件工程 3个要素的是( )。
2、 ( A)工具 ( B)过程 ( C)方法 ( D)环境 5 数据库系统在其内部具有 3级模式,用来描述数据库中全体数据的全局逻辑结构和特性的是( )。 ( A)外模式 ( B)概念模式 ( C)内模式 ( D)存储模式 6 将 E-R图转换到关系模式时,实体与联系都可以表示成( )。 ( A)属性 ( B)关系 ( C)记录 ( D)码 7 某二叉树中度为 2的结点 有 10个,则该二叉树中有( )个叶子结点。 ( A) 9 ( B) 10 ( C) 11 ( D) 12 8 数据库 DB、数据库系统 DBS、数据库管理系统 DBMS三者之间的关系是( )。 ( A) DBMS包括 DB和
3、DBS ( B) DBS包括 DB和 DBMS ( C) DB包括 DBS和 DBMS ( D) DBS就是 DB,也就是 DBMS 9 查询文件的扩展名是( )。 ( A) fpt ( B) qpr ( C) mpr ( D) prg 10 操作对象是两个表的关系运算是( )。 ( A)选择 ( B)投影 ( C)联接 ( D)并 11 命令 ?和 ?的区别是( )。 ( A) “?”输出一个表达式, “?”输出两个表达式 ( B) “?”从当前光标处显示表达式值, “?”另起一行输出表达式值 ( C) “?”用来输出表达式值, “?”不能输出表达式值 ( D) “?”输出表达式值的同时会多
4、输出一个 “?” 12 以下关于查询描述正确的是( )。 ( A)只能根据数据库表建立查询 ( B)不能根据自由表建立查询 ( C)只能根据自由表建立查询 ( D)可以根据数据库表和自由表 建立查询 13 在下面的表达式中,运算结果是逻辑假的是( )。 ( A) EMPTY(“”) ( B) EMPTY(SPACE(5) ( C) ISNULL( NULL ) ( D) ISNULL(SPACE(5) 14 在 Visual FoxPro中,根据变量的作用域来分,内存变量可分为( )。 ( A)字段变量、数组变量和局部变量 ( B)字段变量、数组变量和私有变量 ( C)数组变量、局部变量和全局
5、变量 ( D)私有变量、局部变量和全局变量 15 执行命令: DECLARE array(5, 5),则 array(3, 3)的值为( )。 ( A) 1 ( B) F ( C) T ( D) 0 16 语句 RELEASE ALLEXCEPTA?能够清除的变量是( )。 ( A) A1 ( B) Ab1 ( C) A2 ( D) AB 17 执行下列程序: STORE 0 TO m,n DO WHILE n=1000 下列与该语句等价的是( )。 ( A) SELECT*FROM 职工 WHERE实发工资 FROM 1000 TO 2000 ( B) SELECT*FROM职工 WHERE
6、实发工资 FROM 2000 TO 1000 ( C) SELECT*FROM职工 WHERE实发工资 BETWEEN 1000 AND 2000 ( D) SEI,ECT*FROM职工 WHERE实发工资 BETWEEN 2000 AND 1000 25 命令 SELECT0的功能是( )。 ( A)选择编号最小的未使用工作区 ( B)选择 0号工作区 ( C)关闭当前工作区中的表 ( D)选择当前工作区 26 在表单设计阶段,以下说法正确的是( )。 ( A)表单上对象的位置只能通过 “属性 ”窗口的设置进行修改 ( B)表单上对象的大小只能通过 “属性 ”窗口的设置进行修改 ( C)通过
7、鼠标操作或 “属性 ”窗口的设置,可以改变对象的大小和位置 ( D)表单上的对象一旦建立,其位置和大小均不能改变 27 在 Visual FoxPro中,下列哪项不属于基类的最小事件集( )。 ( A) INIT ( B) ERROR ( C) UNLOAD ( D) ESTROY 28 关于容器,以下叙述中错误的是( )。 ( A)容器可以包含其他控件 ( B)不同的容器所能包含的对象类型都是相同的 ( C)容器可以包含其他容器 ( D)不同的容器所能包含的对象类型 是不相同的 29 以下叙述与表单数据环境有关,其中正确的是( )。 ( A)当表单运行时,与数据环境中的表无关 ( B)当表单
8、运行时,自动打开数据环境中的表 ( C)当表单关闭时,不能自动关闭数据环境中的表 ( D)当表单运行时,数据环境中的表处于只读状态,只能显示不能修改 30 在表单 (Forml)的 INIT事件中编写程序代码,下列语句中不能将表单的背景颜色设置为绿色的是( )。 ( A) Thisform BackColor=RGB(0,255,0) ( B) Tthis Parent BackColor=RGB(0,255,0) ( C) This BackColor=RGB(0,255,0) ( D)选项 A)和 C)正确 31 假设在表单设计器环境下,表单中有一个复选框且已经被选定为当前对象。现在从属性
9、窗口中选择 Value属性,然后在设置框中输入 T。请问以上操作后,复选框 Value属性值的数据类型为( )。 ( A)字符型 ( B)数值型 ( C)逻辑型 ( D)操作出错,类型不变 32 指定在一个文本框中如何输入和显示数据的属性是( )。 ( A) VALUE ( B) CAPTION ( C) NAME ( D) INPUTMASK 33 假设同一名称的课程有不同的学生选修和不同的老师教授,则计算每门课程的平均分的 SQL语句是( )。 ( A) SEE,ECT课程名称, AVG(成绩 )FROM课程 GROUBY成绩 ( B) SELECT课程名称, AVG(成绩 )FROM课程
10、 ORDER BY成绩 ( C) SELECT课程名称, AVG(成绩 )FROM课程 ORDER BY课程名称 ( D) SELECT课程名称, AVG(成绩 )FROM课程 GROUBY课程名称 34 向 “仓库 ”表中新增一个 “人数 ”字段,数据类型为数值型,宽度为 2,正确的命令语句是( )。 ( A) CREATETABLE仓库 ALTER人数 N(2) ( B) CREATE TABLE仓库 ADD FIHDS人数 N(2) ( C) ALFER TABLE仓库 ALTER人数: N(2) ( D) ALrER TABLE仓库 ADD人数 Nf2) 35 在成绩表中,查找数学分数
11、最低的学生记录,下列 SOL语句的空白处应填入的是( )。 SELECT*FROM成绩; WHERE数学 =851 ( C) SELECT学号,姓名 FROM S, SC WHERE S学号 =SC学号 AND成绩 =85 ( D) SELECT学号,姓名 FROM S, SC WHERE S学号 =SC学号 AND ALL成绩 =85 37 用 SQL语句检索选修课程在 5门以上 (含 5f-j)的学生的学号、姓名和平均成绩,并按平均成绩降序排序,正确的命令是 ( )。 ( A) SELECT S学号,姓名,平均成绩 FROM S, SC; WHERE S学号 =SC学号: GROUP BY
12、 S学号 HAVING COUNT(*)=5 ORDER BY平均成绩 DESC ( B) SELECT学号,姓名, AVG(成绩 )FROM S, SC; WHERE S学号 =SC学号 AND COUNT(*)=5; GROUP BY学号 ORDERBY 3 DESC ( C) SELECT S学号,姓名, AVG(成绩 )平均成绩 FROM S, SC; WHERE S学号 =SC学号 AND COUNT(*)=5; GROUP BY S学号 ORDER BY平均成绩 DESC ( D) SELECT S学号,姓名, AVG(成绩 )平均成绩 FROM S, SC; WHERE S学号
13、=SC学号; GROUP BY S学号 HAVING COUNT(*)=5 ORDER BY 3 DESC 38 允许记录中出现重复值,且在索引中也保存每个重复值的索引是 ( A)主索引 ( B)候选索引 ( C)惟一索引 ( D)普通索引 39 在工资数据表中,显示职称为工程师且基本工资大于 2000的记录,下列语句正确的是 ( A) DISPLAY FOR职称 =“工程师 “OR基本工资 2000 ( B) DISPLAY FOR职称 =“工程师 “AND基本工资 2000 ( C) DISPLAY FOR职称 =“工程师 “基 本工资 2000 ( D) LIST ALL FOR职称 =
14、“工程师 “,基本工资 2000 40 下列属于 “范围 ”的短语有 ( A) ALL, REST, NEXT和 RECORD ( B) NEXT, REST, FIELDS和 TOP ( C) REST, FIELDS, FOR和 BOTYOM ( D) ALL, FOR, WHILE和 RECORD 二、基本操作题 41 将数据库 “稿件管理 ”的表 “投稿 ”的结构复制到新表 “n_投稿 ”中。 三、简单应用题 42 考生文件夹下存在数据库 “sale”,其中包含表 “购买信息 ”和表 “会员信息 ”,这两个表存在一对多的联系。对销售数据库建立文件名为 bd1的表单,其中包含两个表格控件
15、。 第一个表格控件用于显示表 “会员信息 ”的记录;第二个表格控件用于显示与表“会员信息 ”当前记录对应的 “购买信息 ”表中的记录。 表单中还包含一个标题为 “关闭 ”的命令按钮,单击此按钮退出表单。 四、综合应用题 43 建立一个名为 cdl的菜单,菜单中有两个菜单项 “日期 ”和 “关闭 ”。 “日期 ”下还有一个子菜单,子菜单有 “月份 ”和 “年份 ”两个菜单项。单击 “关闭 ”菜单返回到系统菜单。 国家二级( VF)机试模拟试卷 4答案与解析 一、选择题 1 【正确答案】 D 【试题解析】 注释一般为序言性注释和功能性注释。序言性注释常位于程序开头部分,它包括程序标题、程序功能说明
16、、主要算法、接口说明、程序位置、开发简历、程序设计者、复审者、复审日期及修改日期等。功能性注释一般嵌在源程序体之中,用于描述其后的语句或程序的主要功能。 2 【正确答案】 A 【试题解析】 数据库管理系统的三级模式结构由外模式、模式和内模式组成。 外 模式,或子模式,或用户模式,是指数据库用户所看到的数据结构,是用户看到的数据视图。模式,或逻辑模式,是数据库中对全体数据的逻辑结构和特性的描述,是所有用户所见到的数据视图的总和。外模式是模式的一部分。内模式,或存储模式,或物理模式,是指数据在数据库系统内的 存储介质上的表示,即对数据的物理结构和存取方式的描述。 3 【正确答案】 D 【试题解析】
17、 软件需求规格说明书有以下几个方面的作用: 便于用户、开发人员进行理解和交流。 反映出用户问题的结构,可以作为软件开发工作的基础和依据 。 作为确认测试和验收的依据。 4 【正确答案】 D 5 【正确答案】 B 【试题解析】 概念模式,也称逻辑模式,是对数据库系统中全局数据逻辑结构的描述,是全体用户应用公共数据视图。它不涉及具体的硬件环境与平台,与具体的软件环境也无关。 6 【正确答案】 B 【试题解析】 E-R图由实体、实体的属性和实体之间的联系 3个要素组成,关系模型的逻辑结构是一组关系模式的集合,将 E-R图转换为关系模型:将实体、实体的属性和实体之间的联系转化为关系模式。 7 【正确答
18、案】 C 【试题解析】 根据二叉树的性质 3:对任何一棵二叉树,度为 0的结点 (即叶子结点 )总是比度为 2的结点多一个。 8 【正确答案】 B 【试题解析】 数据库系统 DBS是由数据库 DB、数据库管理系统 DBMS、数据库管理员 (人员 )、系统平台之一 硬件平台 (硬件 )、系统平台之二 软件平台五个部分构成的。由此可见, DB和 DBMS都是 DBS的组成部分。 9 【正确答案】 B 【试题解析】 表备注文件的扩展名是 fpt,查询丈件的扩展名是 qpr,菜单程序文件的扩展名是 mpr,程序文件的扩展名是 prg。 10 【正确答案】 C 【试题解析】 选择是从关系中找出满足给定条
19、件拘元组,即在表中从行的角度抽取记录。投影是从表中选择若干字段形成新的关系。选择和投影的操作对象只是一个表。联接是将两个关系模式拼接成一个更宽的关系模式,生成的新关系中包含满足联接条件的元组。并是传统的集合运算,是由属于两个关系的元组组成的集合。 11 【正确答案】 B 【试题解析】 表达式值的显示有两种格式: 格式 1: ? 格式 2: ? 功能:计算表达式中的各表达式并 输出各表达式值。 不管有没有指定表达式表,格式 l都会输出一个回车换行符。如果指定了表达式表,各表达式值将在下一行的起始处输出。 格式 2不会输出回车换行符,各表达式值在当前行的光际所在处直接输出。 12 【正确答案】 D
20、 【试题解析】 查询的数据源可以是数据库表、自由表或视图。 13 【正确答案】 D 【试题解析】 EMPTY函数是 “空值 ”测试函数,它的格式是: EMPTY(),功能是根据指定表达式的运算结果是否为 “空 ”值,返回逻辑真或逻辑假。 14 【正确答案】 D 【试题解析】 在 Visual FoxPro中,根据变量的作用域来分,内存变量可分为私有变量、局部变量和全局变量。全局变量是指在任何模块中都可使用的变量,私有变量是在程序中直接使用 (没有通过 public和 local命令事先声明 )而由系统自动隐含建立的变量,局部变量只能在建立它的模块中使用,不能在上层或下层模块中使用。 15 【正
21、确答案】 B 16 【正确答案】 B 17 【正确答案】 D 【试题解析】 DO WHILEENDDO 语句的格式: DO WHILE ENDDO 执行该语句时,先判断 DO WHILE处的循环条件是否成立,如果条件为真,则执行 DO WHILE与 ENDDO之间的 (循环体 )。当执行到 ENDDO时,返回到: DO WHILE,再次判断循环条件是否为真,以确定是否再次执行循环体。若条件为假,则结束该循环语句,执行 ENDDO后面的语句。 18 【正确答案】 C 【试题解析】 在 Visual FoxPro中,根据变量的作用域来分,内存变量可分为私有变量、局部变量和全局变量。全局变量是在任何
22、模块中都可以使 用,使用前要用 public定义;私有变量可以在程序中直接使用,由系统自动隐含建立,不需要通过 public和 local命令事先声明,私有变量的作用域是建立它的模块及其下属的各层模块;局部变量只能在建立它的模块中使用,不能在上层或下层模块中使用,使用前需要用 local命令建立。 19 【正确答案】 A 【试题解析】 SET UDFPARMS TO VALUE指定调用模块程序时,以按值方式传递参数。 20 【正确答案】 D 【试题解析】 刷新当前表单的命令是 thisform refresh,关 闭和释放当前表单的命令是 thisform release。 21 【正确答案】
23、 B 【试题解析】 只有数据库表可以设置字段有效性规则,自由表和视图都不能设置。 22 【正确答案】 D 【试题解析】 通过 INDEX命令只能建立候选索引、惟一索引和普通索引,主索引只能在数据库表中通过 SQL命令建立。 23 【正确答案】 A 24 【正确答案】 C 25 【正确答案】 A 26 【正确答案】 C 【试题解析】 在表单设计器环境下,可以对表单中的控件进行诸如移动、复制、布局 等操作,也可以为控件设置 Tab键顺序。 选定控件,然后可以用鼠标将控件拖动到需要的位置。拖动控件必周的某个控点可以改变控件的宽度和高度,也可以在控件的属性对话框中设置相应的属性来改变控件的大小和位置。
24、 27 【正确答案】 C 【试题解析】 事件是由系统预定义而由用户或系统发出的动作。 Visual FoxPro中,基类的最小事件集包含 lNlT、 ERROR、 DESTROY三个事件。 UNI,OAD事件是释放表单时最后引发的事件。 28 【正确答案】 B 【试题解析】 容器可以包含其他控 件,也可以包含其他容器,不同的容器所能包含的对象类型可以是不相同的。 29 【正确答案】 B 【试题解析】 数据环境中能够包含表单所需要的一些表、视图以及表之间的关联。通常情况下,数据环境中的表、视图和关联会随着表单的运行而打开和建立,并随着表单的关闭或释放而关闭。 30 【正确答案】 B 【试题解析】
25、 修改表单背景属性时,使用 Thisform关键字说明当前表单对象,或通过 This关键字表示表单对象, Parent关键字表示当前对象的直接容器对象,不能在表单中使用该关键字表示表单对象。注 意:逻辑型数据的正确表示应为 “ T ”,而并非 “T”。 31 【正确答案】 D 【试题解析】 复选框的 Value值可以是数值型或逻辑型,默认的属性值是 0,若将 Value值设置为字符 “T”,则会显示 “数据类型不匹配 ”,保持原来的属性值不变。注意:逻辑型数据的正确表示应为 “ T ”,字母左右两边各有一个圆点。 32 【正确答案】 D 【试题解析】 本题是对文本框属性的考查。属性 value
26、用来表示文本框中显示的内容。 Name属性用来标识对象。 Inputmask属性用来指定文本框内如何输入和显示 数据,该属性值是一个字符串,通常由模式符组成,每个模式符规定了相应位置上数据的输入和显示。文本框没有 caption属性。 33 【正确答案】 D 【试题解析】 在 SQL语句中, AVGO函数用来求平均值, GROUP BY子句用于分组。根据题意,本题应该按照 “课程名称 ”字段分组。 34 【正确答案】 D 【试题解析】 利用 SQL命令可以对基本表的结构进行修改,利用以下命令可以为表建立新的字段: ALTER TABLE ADDfCOUJMN(, ) 35 【正确答案】 D 【
27、试题解析】 ANY、 ALL和 SOME是量词,其中 ANY和 SOME是同义词,在进行比较运算时只要予查询中有一行能使结果为真,则结果为真;而 ALL则要求子查询中的所有行都使结果为真时,结果才为真。 EXISTS是谓词, EXISTS和 NO EXISIS是用来检查在子查询中是否有结果返回(即存在元组或不存在元组 )。 本题首先通过子查询得到 “成绩 ”表中所有学生的 “数学 ”成绩,然后在主程序中求出小于等于予查询中所有数学成绩的记录。这里用到了一个 “全部 ”的关系,因此使用 ALL短语。 36 【正确答案】 A 【试题解析】 本题属于多表查询,使用联接查询或嵌套查询,选项 C)和选项
28、 D)使用联接查询,使用时学号字段前要表明所属的表,写法都不完整;选项 A)和选项 B)中的 EXISTS属于 SQL查询谓词, EXISTS或 NOTEXISTS是用来检查在子查询中是否有结果返回,即存在元组或不存在元组,子查询要用圆括号括起来。 37 【正确答案】 D 38 【正确答案】 D 【试题解析】 主索引和候选索引中不允许出现重复值,惟一索引中虽然可以允许出现重 复值,但它只保留重复出现的第一个记录。 39 【正确答案】 B 【试题解析】 选项 A)中逻辑条件错误,应为 AND,选项 C)和选项 D)都属于语法错误。 40 【正确答案】 A 【试题解析】 ALL, REST, NE
29、XT和 RECORD都可以用来表示记录 “范围 ”,TOP和 BOTTOM表示表中固定的位置, FOR和 WHILE都是表示条件的短语。 二、基本操作题 41 【正确答案】 在命令窗口中输入命令: USE 投稿 (回车执行 ) COPY STRU TO n_投稿 (回车执行 ) 三、简单应用题 42 【正确答案】 步骤 1:单击工具栏 新建 按钮,在 新建 对话框的 文件类型 中选择 “表单 ”,单击 向导 按钮,在 向导选取 对话框中选择 “一对多表单向导 ”,单击 确定 按钮。在弹出的对话框 数据库和表 列表框中,选择 “sale“数据库和 “会员信息 ”表,单击 全部添加 按钮再单击 下
30、一步 按钮。在弹出的对话框 数据库和表 列表框中,选择 “sale数据库和 “购买信息 ”表单击 全部添加 按钮,再单击 下一步 按钮。在 “购买信息 ”和 “会员信息 ”下面的下拉列表框叶 均选择 “会员编 号 ”,单击 下一步 按钮。再单击 完成 按钮,在弹出的对话框 请输入表单标题 文本框中输入 “bd1”,单击 完成 按钮打开表单设计器。 步骤 2:单击 表单控件 中的 “命令按钮 ”,再单击表单添加一个命令按钮。在 属性 窗口中将 ”Caption属性设置为 “关闭 ”。右击 “关闭 ”命令按钮选择 “代码 ”,在 Click事件中输入代码: ThisForm.Release。 步骤
31、 3:在表单设计器中,右击表单选择 “数据环境 ”命令,打开表单的数据环境,在弹出的 添加表或视图 对话框中选择数据库 “sale”,选择表 “会员信息 ”,单击添加 按钮,选择表 “购买信息 ”单击 添加 按钮,再单击 关闭 按钮。 步骤 4:将数据环境设计器中的 “会员信息 ”和 “购买信息 ”表依次拖入表单适当位置。 步骤 5:在表单设计器中右击 “Grid1”表格选择 “代码 ”命令,选择“AfterRowColChange“事件输入以下代码: SELECT*INTO CURSOR tmp FROM购买信息 WHERE会员编号 =; ThisForm. grid1. columns (
32、1).text1.value ThisForm. Grid2. RecordSourceType=1 ThisForm. Grid2. RecordSource =”tmp” ThisForm.Grid2.Refresh 步骤 6:单击工具栏 保存 按钮右击表单选择 “执行表单 ”命令。 四、综合应用题 43 【正确答案】 步骤 1:单击工具栏上的 新建 按钮,在弹出的 新建 对话框 文件类型 中选择 “菜单,再单击 新建文件 ,打开菜单设计器。 步骤 2:在菜单设计器的 “菜单名称 ”列输入 “日期 ”, “结果 ”列 选择 “子菜单 ”,单击 创建 按钮,此时会弹出新的菜单设计器。在 “菜单名称 ”列输入 “月份 ”,在下一行的 “菜单名称 ”列输入 “年份 ”。在 “菜单级 ”列表框中选择菜单栏。然后返回第一级菜单进行设置。 步骤 3:在最后一行的 “菜单名称 ”中输入 “关闭 ”, “结果 ”列选择 “过程 ”。单击 创建 按钮,在弹出的文本框中输入程序代码 “SET SYSMENU TO DEFAULT”。