1、国家二级 VF机试模拟试卷 171及答案与解析 一、基本操作题( 30分) 1 (1)将数据库 “school”添加到项目 “xm”中。 (2)修改表单 “bd1”,将其中标签的字体大小修改为 20。 (3)把表单 “bd1”添加到项目 “xm”中。 (4)为数据库 “school”中的表 “student”建立唯一索引,索引名称和索引表达式为 “学号 ”。 二、简单应用题( 40分) 2 (1)建立一个文件名和表单名均为 two的表单,然后为表单 two建立一个名为 quit的新方法 (单击选择表单后,从 “表单 ”菜单 中选择 “新建方法程序 ”命令 ),并在该方法中写一条语句 Thisf
2、orm release)最后向表单中添加一个命令按钮 (Command1),并在该命令按钮的 Click事件中写一条调用新方法 quit的语句。 (2)使用 SQL语句计算每个歌手的最高分、最低分和平均分,并将结果存储到result dbf表中 (包含 “歌手姓名 ”、 “最高分 ”、 “最低分 ”和 “平均分 ”4个字段 ),要求结果按 “平均分 ”降序。 注意:按 “歌手姓名 ”分组;每个歌手的最高分、最低分和平均分由评分表中的“分数 ”字段计算得出。 三、综合 应用题( 30分) 3 首先利用表设计器在考生文件夹下建立表 table3,表结构如下: 民族 字符型 (4) 数学平均分 数值
3、型 (6, 2) 英语平均分 数值型 (6, 2) 然后在考生文件夹下创建一个下拉式菜单 mymenu mnx,并生成菜单程序 mymenu mpr。运行该菜单程序时会在当前 VFP系统菜单的末尾追加一个 “考试 ”子菜单,如图 1-22所示。菜单命令 “计算 ”和 “返回 ”的功能都通过执行过程完成。 菜单命令 “计算 ”的功能是根据 xuesheng表和 chengji表分别统计汉族学生和少数民族学生在 “数学 ”和 “英语 ”两门课程上的平均分,并把统计数据保存在表 table3中。表 table3的结果有两条记录:第 1条记录是汉族学生的统计数据, “民族 ”字段填 “汉 ”;第 2条
4、记录是少数民族学生的统计数据, “民族 ”字段填 “其他 ”。 菜单命令 “返回 ”的功能是恢复标准的系统菜单。 菜单程序生成后,运行菜单程序并依次执行 “计算 ”和 “返回 ”菜单命令。 国家二级 VF机试模拟试卷 171答案与解析 一、基本操作题( 30分) 1 【正确答案】 (1) 选择【文件】 【新建】命令,选择 “项目 ”,单击 “新建文件 ”按钮,输入项目名称 “xm”后单击 “保存 ”按钮。 在项目管理器中选择 “数据 ”选项卡,然后选择列表框中的 “数据库 ”,单击 “添加 ”按钮,将考生文件夹下的数据库 “school”添加到新建的项目 “xm”中。 (2) 选择【文件】 【
5、打开】命令,在 “打开 ”对话框的 “文件类型 ”下拉列表框中选择 “表单 ”,选择 “bd1 sex”,单击 “确定 ”按钮,打开表单 “bd1”。 在表单设计器中,单击标签 “Label1”,在标签属性窗口中分别将 “FontSize”属性值修改为 “20”,关闭表单设计器并保存。 (3)在项目管理器 中,单击 “文档 ”选项卡,选择 “表单 ”,单击 “添加 ”命令按钮,将考生文件夹下的表单 “bd1”添加到新建的项目 “xm”中。 (4) 在项目管理器中,单击 “数据 ”选项卡,选择 “school”数据库下的 “student”表。 单击项目管理器右边的 “修改 ”按钮,打开表设计器
6、。 在表设计器中单击 “索引 ”选项卡,索引名称和索引表达式均输入为 “学号 ”,类型选择 “唯一索引 ”,单击 “确定 ”按钮保存表 “student”结构。 二、简单应用题( 40分) 2 【正确答案】 (1)步骤 1:在命令窗口执 行命令: CREATE FORM two,打开表单设计器新建表单。 步骤 2:执行【表单】 【新建方法程序】菜单命令,在弹出的 “新建方法程序 ”对话框的 “名称 ”文本框中输入 “quit”,单击 “添加 ”按钮新增方法,然后关闭对话框。 步骤 3:接着在 “属性 ”窗口中双击 quit方法,打开用户自定义过程代码框输入:THISFORM RELEASE。
7、步骤 4:通过 “表单控件 ”工具栏向表单添加一个命令按钮 (Command1),双击命令按钮,编写该按钮的 Click事件代码: THISFORM QUIT。 步骤 5:单击 “常用 ”工具栏中的 “运行 ”按钮查看结果,将表单文件保存到考生文件夹下。 (2)在命令窗口执行如下 SQL,命令语句执行查询: SELECT歌手表歌手姓名, MAX(评分表分数 )AS最高分; MIN(评分表分数 ) AS最低分, AVG(评分表分数 ) AS平均分; FROM 大奖赛 !歌手表 INNER JOIN 大奖赛 !评分表; ON 歌手表歌手编号 =评分表歌手编号; GROUP BY 歌手表歌手姓名;
8、ORDER BY 4 DESC; INTO TABLE result (注意:以上 SQL查询语句是通过查询设计器生成,大家也可以直接在查询设计器中完成查询。 ) 【试题解析】 (1)本题考查的是表单方法的创建。在 visual FoxPro中,用户首先应打开 “新建方法程序 ”对话框定义新方法名;然后在 “属性 ”面板中定义找到该方法并编写该方法的功能代码;方法建立完毕后,用户可以像调用表单中其他方法一样调用新建的方法。 (2)本题主要考查了 SQL分组与计算查询。本题的关键首先是要确定进行计算的字段有哪些、进行何种计算,然后判断根据哪个 字段进行分组。根据题目要求,在输出字段中除 “歌手姓
9、名 ”字段是表中原有的字段外,最高分、最低分和平均分都需要根据 “分数 ”字段生成,分别使用计算函数 MAX()、 MIN()和 AVG()。 由于是求每个歌手的最高分、最低分和平均分,因此,可以根据 “歌手姓名 ”字段进行分组计算。 对于 SQL语句不太熟悉的考生,也可以借助查询设计器生成本题的 SQL语句。 三、综合应用题( 30分) 3 【正确答案】 步骤 1:在命令窗口执行命令: CREATE table3,打开数据表设计器新建表。 步骤 2:根 据题意,在表设计器中逐行输入每个字段的字段名,并设置字段类型和宽度,然后单击 “确定 ”按钮,此时系统会弹出一个对话框询问 “现在输入数据记
10、录吗 ?”, 本题不需要录入数据,单击 “否 ”按钮。 步骤 3:在命令窗口执行命令: CREATE MENU mymenu,在弹出的 “新建菜单 ”对话框中单击 “菜单 ”图标按钮,打开菜单设计器。 步骤 4:在菜单设计器 “菜单名称 ”列的文本框中输入 “考试 ”, “结果 ”下拉框中选择为 “子菜单 ”,单击 “创建 ”按钮进入下级菜单设计,在 “菜单名称 ”列的第 1、 2行文本框中依 次输入子菜单名 “计算 ”、 “返回 ”,将两个子菜单的 “结果 ”都设置为 “过程 ”,分别单击两个子菜单行的 “创建 ”命令按钮,打开过程编辑框编写过程代码。 步骤 5:两个子菜单的过程代码如下:
11、*“计算 ”子菜单的过程代码 * CLOSE DATABASE ALL SELECT AVG(数学 ), AVG(英语 )FROM XUESHENG; JOIN CHENGJI ON XUESHENG学号 =CHENGJI学号; WHERE 民族 =“汉 “ INTO ARRAY TMP1 SELECT AVG(数学 ), AVG(英语 )FROM XUESHENG; JOIN CHENGJI ON XUESHENG学号 =CHENGJI学号; WHERE民族 “汉 “ INTO ARRAY TMP2 SELECT O USE TABLE3 APPEND BLANK REPLACE 民族 WI
12、TH”汉 ”,数学平均分 WITH TMP1(1),英语平均分 WITH TMP1(2) APPEND BLANK REPLACE 民族 WITH “其他 “,数学平均分 WITH TMP2(1),英语平均分 WITH TMP2(2) CLOSE DATA ALL *“返回 ”子菜单的过程代码 * SET SYSMENU NOSAVE SET SYSMENU TO DEFAULT 步骤 6:执行【显示】 【常规选项】菜单命令,在 “位置 ”区域选中 “追加 ”单选项,则新建立的子菜单会在当前 Visual FoxPro系统菜单后显示。 步骤 7:执行【菜单】 【生成】菜单命令,在弹出的 Vis
13、md FoxPro对话框中单击 “是 ”按钮,接着系统会弹出 “生成 菜单 ”对话框,单击 “生成 ”按钮生成一个可执行的菜单文件。 步骤 8:在命令窗口执行命令: DO mymenu mpr,运行菜单,并执行“计算 ”菜单命令。 【试题解析】 本题考查了表的基本操作;菜单的建立及使用; SQL简单计算查询及数据表记录的修改。 表的建立和菜单的建立都属于比较基本的操作,注意向系统菜单追加菜单项时,应在菜单设计器中打开 “常规选项 ”对话框进行设置。本题的关键是菜单命令中 SQL查询、插入和更新语句的设计。编写程序代码基本思路如下: 首先利用 SQL计算查 询,统计 “汉 ”族学生的 “数学 ”和 “荚语 ”平均成绩,将结果保存到数组中,再通过数组向 table3表插入记录;以同样的方法再将非 “汉 ”族学生的 “数学 ”和 “英语 ”平均成绩插入到 table3表中。 向表中添加记录时,可以先通过 VFP的添加表记录命令 Append Blank在表末尾先增加一个空白记录,然后通过 replace命令修改字段值,完成记录的添加。
copyright@ 2008-2019 麦多课文库(www.mydoc123.com)网站版权所有
备案/许可证编号:苏ICP备17064731号-1