1、国家二级 VF机试模拟试卷 191及答案与解析 一、基本操作题( 30分) 1 (1)打开数据库 “外汇 ”,通过 “外币代码 ”字段为 “外汇代码 ”和 “外汇账户 ”建立永久联系。 (2)新建一个名为 “外汇管理 ”的项目文件,将数据库 “外汇 ”加入 “外汇管理 ”项目中。 (3)修改 mymenu菜单文件,为 “文件 ”下的子菜单项 “查找 ”设置访问键 F。 (4)修改 one prg中的 SQL语句,使之正确 (该语句的功能是从 rate表中删除币种 1代码为 14,并且币种 2代码为 27的记录 )。 二、简单应用题( 40分 ) 2 (1)用 SQL语句完成下列操作:将选课在
2、5门课程以上 (包括 5门 )的学生的学号、姓名、平均分和选课门数按平均分降序排序,并将结果存放于数据库表stu_temp名为学号、姓名、平均分和选课门数 )。 (2)建立一个名为 menu_lin的下拉式菜单,菜单中有两个菜单项 “查询 ”和 “退出 ”。 “查询 ”项下还有一个子菜单,子菜单有 “按姓名 ”和 “按学号 ”两个选项。在 “退出 ”菜单项下创建过程,该过程负责使程序返回到系统菜单。 三、综合应用题( 30分) 3 建立一个表单名和文件名均为 myform的表单 。表单的标题是 “评委打分情况 ”,表单中有两个命令按钮 (Command1和 Command2)和两个单选钮 (O
3、ption1和Option2)。 Command1和 Command2的标题分别是 “生成表 ”和 “退出 ”, Opdon1和Option2的标题分别是 “按评分升序 ”和 “按评分降序 ”。 为 “生成表 ”命令按钮编写程序,程序的功能是根据简单应用题生成的result dbf表按指定的排序方式生成新的表,单选钮选择 “按评分升序 ”时,依次按“最高分 ”、 “最低分 ”和 “平均分 ”3个字段升序排序生成表 six a,单选钮选 择 “按评分降序 ”时,依次按 “最高分 ”、 “最低分 ”和 “平均分 ”3个字段降序排序生成表 six d。 运行表单,选择 “按评分升序 ”单选钮,单击
4、“生成表 ”命令按钮;再选择 “按评分降序 ”单选钮,单击 “生成表 ”命令按钮 (注意:必须执行 )。 国家二级 VF机试模拟试卷 191答案与解析 一、基本操作题( 30分) 1 【正确答案】 (1) 在命令窗口执行命令: MODIFY DATABASE外汇,打开数据库设计器。 在数据库设计器中,右击 “外汇代码 ”表,选择【修改】快捷菜单命令,打开 “外汇代码 ”表设计器,在 “字 段 ”选项卡中选中 “外币代码 ”,在 “索引 ”列中选择 “升序 ”,然后在 “索引 ”选项卡中修改 “类型 ”为 “主索引 ”,单击 “确定 ”按钮保存表结构修改。 在数据库设计器中,右击 “外汇账户 ”
5、表,选择【修改】快捷菜单命令,打开 “外汇账户 ”表设计器,选中 “字段 ”选项卡中的 “外币代码 ”,在 “索引 ”列中选择 “升序 ”,单击 “确定 ”按钮保存表结构修改。 拖动 “外汇代码 ”表 “索引 ”下方的主索引 “外币代码 ”到 “外汇账户 ”表中 “索引 ”下方的普通索引 “外币代码 ”上,为两个表建立联系。 (2) 在命令窗口执行命令: CREATE PROJECT外汇管理,新建一个项目管理器。 在项目管理器中,选中 “数据 ”选项卡内的 “数据库 ”项,然后单击 “添加 ”按钮,在弹出的 “打开 ”对话框中双击 “外汇 ”数据库文件,将数据库添加到项目管理器中。如图 2-4
6、5所示。 (3) 在命令窗口执行命令: MODIFY MENU MYMENU,打开菜单设计器。 选中 “文件 ”菜单下的子菜单 “查找 ”,将菜单名称修改为 “查找 ( F)”,单击常用工具栏中的 “保存 ”按钮。 执行【菜单】 【生成】菜单命令,在弹出的 Visual FoxPro对话框中单击 “是 ”按钮,接着系统会弹出 “生成 菜单 ”对话框,单击 “生成 ”按钮生成一个可执行的菜单文件。 (4) 在命令窗口执行命令: MODIFY COMMAND one,打开程序文件编辑器。 在编辑器中将代码修改为: DELETE FROM rate WHERE 币种 1代码 =“14“ AND币种
7、2代码 =“27“。 【试题解析】 本大题考查了项目管理器的建立及使用、永久联系的建立、菜单设计器的使用和 SQL查询语句。 建立两个表的永久联系时,有一个表中必须建立关联字段的主索引 (或候选索引 ),另一个表要建立普通索引。本题中,应先以 “外币代码 ”为关联字段在 “外汇代码 ”表中建立主索引,在 “外汇账户 ”表中建立普通索引,然后再建立联系。 在菜单设计器中,为菜单项设置访问键的方法是在要作为访问键的字符前加 “ ”两个字符。注意:在对菜单进行修改后要保存并生成菜单程序文件。 SOL语句中删除记录的命令是 delete from,删除条件应该用 where短语。 二、简单应用题( 4
8、0分) 2 【正确答案】 (1)步骤 1:在命令窗口执行命令: OPEN DATABASE学生,打开 “学生 ”数据库。 步骤 2:在命令窗口执行命令 (以下程序是通过查询设计器生成 ): SELECT 学生学号,学生姓名, AVG(选课成绩 ) AS平均分,; & AVG()函数用来求平均分 COUNT(选课课程号 )AS选课门数; &COUNT()函数用来统计每个学生选修课程数 FROM 学生 !学生 INNER JOIN学生 !选课; ON 学生学号 =选课学号; GROUP BY选课学号; &按选课表的学号 字段对记录进行分组 HAVING COUNT(选课课程号 ) =5, &进一步
9、限定分组后的条件,只求选课数在 4门以上的学生成绩 ORDER BY 3 DESC; &按输出结果的第 3列字段 (即 “平均分 ”字段 )值降序排序 INTO TABLE STU_TEMP DBF (2)步骤 1:在命令窗口执行命令: CREATE MENU menu_lin,在弹出的“新建菜单 ”对话框中单击 “菜单 ”图标按钮,打开菜单设计器。 步骤 2:在菜单设计器 “菜单名称 ”列的文本框中依次输入 “查询 ”和 “退出 ”两个主菜单名, “结果 ”下拉框中选择为 “子菜单 ”,单击 “查看 ”行的 “创建 ”按钮进入下级菜单设计,在 “菜单名称 ”列的第 1、 2行文本框中依次输入
10、子菜单名 “按姓名 ”和 “按学号 ”。 步骤 3:通过 “菜单级 ”下拉框返回主菜单项设计界面,选择 “退出 ”菜单命令的 “结果 ”项为 “过程 ”,并通过单击 “创建 ”按钮打开过程编辑器添加返回到系统菜单的命令: SET SYSMENU TO DEFAULT。 步骤 4:执行【菜单】 【生成】菜单命令,在弹出的 VisualFoxPro对话框中单击 “是 ”按钮,接着系统会弹出 “生成菜单 ”对话框,单击 “生成 ”按钮生成一个可执行的菜单文件。 步骤 5:在命令窗口执行命令: DO menu_lin mpr,运行菜单查看结果。 【试题解析】 (1)本题主要考查了 SQL分组与计算查询
11、。本题的关键首先是要确定进行计算的字段有哪些、进行何种计算,然后判断根据哪个字段进行分组。根据题目要求,在输出字段中 “学号 ”和 “姓名 ”是表中原有的字段,而 “平均分 ”和 “选课门数 ”字段则需要通过计算得出,通过 AS短语可指定输出新的字段名。 “平均分 ”可以通过求每个学生 “成绩 ”的平均值得到,使用 AVG函数求平均值;而“选课门数 ”可以通过求每个学生选修的课 程总数得到,在 “选课 ”表中可以通过 “选课号 ”的不同判断每个学生共选修了几门课程,使用 COUNT函数可以进行计数统计,此处注意不要与求和函数 SUM混淆。 从上面两个函数不难看出,这两个函数都是在针对每个学生进
12、行操作的,因此可以通过 “选课 ”表中的 “学号 ”字段分组,将 “学号 ”相同的记录分到一组再进行计算。 另外,题目还要求对选课在 4门以上的学生成绩进行计算,因此,该条件必须通过 HAVING子句对分组统计的结果做进一步限制,对满足该条件的学生才进行计算输出结果。此处不要将 HAVING条件短语与 WHERE条件短语混淆 ,HAVING短语是在进分组计算的基础上,对所得的结果做进一步的限制,而WEHRE条件短语基本与分组计算结果没有关系。 (2)本题考查的是菜单设计器的使用。设计过程中注意主菜单项与子菜单项的建立,本题属于比较简单的操作。 三、综合应用题( 30分) 3 【正确答案】 步骤
13、 1:在命令窗口执行命令: CREATE FORMmyform,打开表单设计器新建表单。从 “表单控件 ”工具栏中依次向表单添加一个选项按钮组和两个命令按钮控件。 步骤 2:在 “属性 ”面板的下拉框中选择表单对象,在 “全部 ”选项卡中修改对象属 性值,见表 2-23。 步骤 3:双击命令按钮,编写各个命令按钮的 Click事件代码。各按钮代码如下: *“生成表 ”按钮的 Click事件代码 *IF thisform optiongroup1 option1 value=1 SELECT * FROM result; ORDER BY 最高分,最低分,平均分; INTO DBF six_aE
14、LSE SELECT * FROM result; ORDER BY最高分 DESC ,最低分 DESC,平均分 DESC; INTO DBF six_dENDIF *“退出 ”按钮的 Cliok事件代码 * THISFORM RELEASE 步骤 4:单击 “常用 ”工具栏中的 “运行 ”按钮查看结果,按照题目要求生成两个数据表文件,将表单文件保存到考生文件夹下。 【试题解析】 本大题考查了表单及控件的常用属性和方法的设置; IF条件语句; SQL简单的联接查询。 对本题操作时,首先根据题意新建表单、添加控件并修改相关属性。修改选项组单选按钮的标题属性值时,要注意选项组处于 “编辑 ”状态。 由于查询是根据选项组中单个选项进行操作的,因此需要判断单 击时被选定的是哪个单选项来执行相应的功能选项组中获得当前被选中单选项的返回值属性是 Value,进行代码设计时,可以通过 IF条件语句判断当前被选定的是哪个单选项,并完成该单选项所对应执行的功能。 SQL程序设计部分考查的是 SQL简单联接查询,语句比较简单,主要注意排序字段的设置,当对多个字段进行排序时,各字段之间要用逗号隔开,升序使用ASC短语 (可省略 ),降序使用 DESC短语。
copyright@ 2008-2019 麦多课文库(www.mydoc123.com)网站版权所有
备案/许可证编号:苏ICP备17064731号-1