1、国家二级 VF机试(操作题)-试卷 127及答案解析(总分:6.00,做题时间:90 分钟)一、基本操作题(总题数:1,分数:2.00)1.1在考生文件夹下新建一个名为“图书管理”的项目文件。 2在项目中新建一个名为“图书”的数据库。 3将考生文件夹下的所有自由表添加到“图书”数据库中。 4在项目中建立查询 book_qu,其功能是查询价格大于等于 10的图书(book 表)的所有信息,查询结果按价格降序排序。(分数:2.00)_二、简单应用题(总题数:1,分数:2.00)2.在考生文件夹下完成下列操作: 1将歌手比赛分为 4个组,“歌手表”中的“歌手编号”字段的左边两位表示该歌手所在的组号。
2、考生文件夹下的程序文件 fiveprg 的功能是:根据“歌手表”计算每个组的歌手人数,将结果存入表 one,表 one中有“组号”和“歌手人数”两个字段。程序中有 3处错误,请修改并执行程序。 注意:只能修改标有错误的语句行,不能修改其他语句,数组名 A不允许修改。 2建立一个数据库文件“歌手大奖赛dbc”,并将“歌手表”、“评委表”和“评分表”3 个自由表添加到该数据库中。使用视图设计器建立视图 songer_view,根据“歌手表”、“评委表”和“评分表”建立该视图,视图中的字段项包括评委姓名、歌手姓名、分数,视图中的记录按“歌手姓名”升序排列,若“歌手姓名”相同再按“分数”降序排列。(分
3、数:2.00)_三、综合应用题(总题数:1,分数:2.00)3.(1)在考生文件夹下建立一个文件名和表单名均为 myform的表单文件。 (2)在考生文件夹下建立一个如下图所示的快捷菜单 mymenu,该快捷菜单有两个选项“取前三名”和“取前五名”。分别为两个选项建立过程,使得程序运行时,单击“取前三名”选项的功能是:根据“学院表”和“教师表”统计平均工资最高的前三名的系的信息并存入表 sa_three中,sa_three 中包括“系名”和“平均工资”两个字段,结果按“平均工资”降序排列;单击“取前五名”选项的功能与“取前三名”类似,统计查询“平均工资”最高的前五名的信息,结果存入 sa_fi
4、ve中,sa_five 表中的字段和排序方法与 sa_three相同。(分数:2.00)_国家二级 VF机试(操作题)-试卷 127答案解析(总分:6.00,做题时间:90 分钟)一、基本操作题(总题数:1,分数:2.00)1.1在考生文件夹下新建一个名为“图书管理”的项目文件。 2在项目中新建一个名为“图书”的数据库。 3将考生文件夹下的所有自由表添加到“图书”数据库中。 4在项目中建立查询 book_qu,其功能是查询价格大于等于 10的图书(book 表)的所有信息,查询结果按价格降序排序。(分数:2.00)_正确答案:(正确答案:(1)打开 Visual FoxPro,通过常用工具栏中
5、的“新建”命令按钮新建项目文件,并将该项目以“图书管理”为文件名保存在考生文件夹下。 (2)按照题目的要求在项目管理器中新建一个数据库,如图 359 所示。设计完成后,关闭数据库设计器。 (3)按照题目的要求将考生文件夹下的自由表添加到“图书”数据库中,如图 360 所示。本小题中的自由表是“BOOKDBF”、“BORROWSDBF“和“LOANSDBF”3 个表。 (4)步骤 1:通过“图书管理”项目管理器新建查询,如图 361 所示。 步骤 2:将全部字段添加到“选定字段”列表框中,如图 362 所示。 步骤3:在“筛选”选项卡下,为查询添加筛选条件,如图 363 所示。 步骤 4:在“排
6、序依据”选项卡中,按要求设置排序依据,如图 364 所示。 )解析:解析:在项目中建立查询首先需要打开相应的项目文件,然后选中“数据”中的“查询”项,并单击项目管理器中的“新建”按钮,最后在弹出的查询设计器中进行操作。二、简单应用题(总题数:1,分数:2.00)2.在考生文件夹下完成下列操作: 1将歌手比赛分为 4个组,“歌手表”中的“歌手编号”字段的左边两位表示该歌手所在的组号。考生文件夹下的程序文件 fiveprg 的功能是:根据“歌手表”计算每个组的歌手人数,将结果存入表 one,表 one中有“组号”和“歌手人数”两个字段。程序中有 3处错误,请修改并执行程序。 注意:只能修改标有错误
7、的语句行,不能修改其他语句,数组名 A不允许修改。 2建立一个数据库文件“歌手大奖赛dbc”,并将“歌手表”、“评委表”和“评分表”3 个自由表添加到该数据库中。使用视图设计器建立视图 songer_view,根据“歌手表”、“评委表”和“评分表”建立该视图,视图中的字段项包括评委姓名、歌手姓名、分数,视图中的记录按“歌手姓名”升序排列,若“歌手姓名”相同再按“分数”降序排列。(分数:2.00)_正确答案:(正确答案:(1)步骤 1:打开程序 five,修改其中的错误如图 3114 所示。 步骤 2:保存并运行程序。 (2)步骤 1:新建一个名为“歌手大奖赛”的数据库文件,在数据库设计器中空白
8、处单击鼠标右键,然后将“歌手表”、“评委表”和“评分表”添加到数据库中。 步骤 2:新建一个视图,并将表“歌手表”、“评委表”和“评分表”添加到视图设计器中,如图 3115 所示。 步骤 3:将“评委表评委姓名”、“歌手表歌手姓名”和“评分表分数”3 个字段添加到选定字段框中,如图3116 所示。 步骤 4:在排序选项卡中,按“歌手姓名”升序排序,再按“分数”降序排序,如图3117 所示。 步骤 5:保存视图名为“songer_view”,如图 3118 所示。 )解析:解析:WHILE 循环语句的格式如下。 DO WHILE 条件表达式 语句体 ENDDO 故第 1处错误应改为“DO WHI
9、LENOTEOF()”;由题意可知,one 表中的组号实际上是歌手编号的前两位,故第 2处错误应改为“SELECT COUNT(*)FROM 歌手表 WHERE LEFT(歌手表歌手编号,2)=zuhao INTO ARRAY A”;表中记录值的修改可以通过 REPIACE命令来完成,其格式为: REPLACE 字段名 WITH常量故第 3处错误应改为“REPLACE歌手人数 WITH A”。三、综合应用题(总题数:1,分数:2.00)3.(1)在考生文件夹下建立一个文件名和表单名均为 myform的表单文件。 (2)在考生文件夹下建立一个如下图所示的快捷菜单 mymenu,该快捷菜单有两个选
10、项“取前三名”和“取前五名”。分别为两个选项建立过程,使得程序运行时,单击“取前三名”选项的功能是:根据“学院表”和“教师表”统计平均工资最高的前三名的系的信息并存入表 sa_three中,sa_three 中包括“系名”和“平均工资”两个字段,结果按“平均工资”降序排列;单击“取前五名”选项的功能与“取前三名”类似,统计查询“平均工资”最高的前五名的信息,结果存入 sa_five中,sa_five 表中的字段和排序方法与 sa_three相同。(分数:2.00)_正确答案:(正确答案:步骤 1:在命令窗口输入“Create form myform”,按下回车键新建一个表单,按要求修改表单的
11、Name属性为“myform”。在表单的 RightClick事件中写入“DO mymenumpr”,如图3129 所示。 步骤 2:新建一个快捷菜单,菜单项分别为“取前三名”和“取前五名”,结果均为过程,如图 3130 所示。 步骤 3:分别单击两个菜单项后面的“创建”按钮,编写对应的过程代码如下。 *“取前三名”菜单项中的代码* 选择查询字段,通过 AS短语指定显示字段,通过 TOP 3指定显示结果的前三个 SELECT TOP 3 学院表系名,avg(教师表工资)AS 平均工资; 指定字段来源 FRoM 学院表,教师表; 设置查询条件 WHERE 学院表系号=教师表系号; GROUP B
12、Y子句用于按系名分组 GROuP BY 学院表系名; 查询结果按平均工资降序排列 ORDER BY 2 DESC; 将查询结果存储到 sa threedbf 中 INTO TABLE sa threedbf * *“取前五名”菜单项中的代码* &选择查询字段,通过 AS短语指定显示字段,通过 TOP 5指定显示结果前五个 SELECT TOP 5 学院表系名,avg(教师表工资)as 平均工资; &指定字段来源 FROM 学院表,教师表; 设置查询条件 whERE学院表系号=教师表系号; GROUP BY 子句用于按系名分组 GROUP BY 学院表系名; 查询结果按平均工资降序排列 ORDER BY 2 DESC; &将查询结果存储到 sa fivedbf 中 INTO TABLE sa fivedbf * 步骤 4:保存并生成可执行菜单,如图3131 所示。 步骤 5:运行表单,在表单空白处单击鼠标右键,依次执行两个菜单项中的命令,如图 3132 所示。 )解析:解析:新建表单,在表单的 RightClick事件中写入调用菜单的方法,完成菜单的设计。