1、上机操作题-试卷 25 及答案解析(总分:6.00,做题时间:90 分钟)一、基本操作题(总题数:1,分数:2.00)1.在考生文件夹下,有一表单文件 myformSCX。打开该表单文件,然后在表单设计器环境下完成如下操作: (1)在属性窗口中将表单设置为不可移动的,并将其标题设置为“表单操作”。 (2)为表单新建一个名为 mymethod 的方法,方法代码为:wait”mymethodwindow。 (3)设置 Ok 按钮的 Click 事件代码,其功能是调用表单的 mymethod 方法。 (4)设置 Cancel 按钮的 Click 事件代码,其功能是关闭当前表单(分数:2.00)_二、
2、简单应用题(总题数:1,分数:2.00)2.(1)利用查询设计器创建查询,从xuesheng 和 cheni 表中找出所有 1982 年出生的汉族学生记录。查询结果包含“学号”、“姓名”、“数学”、“英语”和“信息技术”5 个字段:各记录按“学号”降序排序;查询去向为表 tablel。最后将查询保存在 querylqpr 文件中,并运行该查询。(2)首先创建数据库 cj m,并向其中添加 xuesheng 表和 cheni 表。然后在数据库中创建视图 viewl:利用该视图只能查询数学、英语和信息技术 3 门课中至少有一门不及格(小于 60 分)的学生记录;查询结果包含“学号”、“姓名”、“数
3、学”、“英语”和“信息技术”5 个字段;各记录按学号降序排序。最后利用刚创建的视图 viewl 查询视图中的全部信息,并将查询结果存放在表 table2 中。(分数:2.00)_三、综合应用题(总题数:1,分数:2.00)3.首先利用表设计器在考生文件夹下建立表 table3,表结构如下: 民族 字符型(4) 数学平均分 数值型(6,2) 英语平均分 数值型(6,2) 然后在考生文件夹下创建一个下拉式菜单 mymenummx,并生成菜单程序 mymenumpr。运行该菜单程序时会在当前 VFP 系统菜单的末尾追加一个“考试”子菜单,如图所示。(分数:2.00)_上机操作题-试卷 25 答案解析
4、(总分:6.00,做题时间:90 分钟)一、基本操作题(总题数:1,分数:2.00)1.在考生文件夹下,有一表单文件 myformSCX。打开该表单文件,然后在表单设计器环境下完成如下操作: (1)在属性窗口中将表单设置为不可移动的,并将其标题设置为“表单操作”。 (2)为表单新建一个名为 mymethod 的方法,方法代码为:wait”mymethodwindow。 (3)设置 Ok 按钮的 Click 事件代码,其功能是调用表单的 mymethod 方法。 (4)设置 Cancel 按钮的 Click 事件代码,其功能是关闭当前表单(分数:2.00)_正确答案:(正确答案: (1)在命令窗
5、口执行命令:,打开表单设计器修改表单。 选中表单,在“属性”面板中修改表单(Forml)的 Movable 属性值为:F,修改 Caption 属性值为:表单操作。 (2)接上一小题操作,执行【表单】一【新建方法程序】菜单命令,在弹出的“新建方法程序”对话框的“名称”文本框中输入“mymethod”,单击“添加”按钮新增方法,然后关闭对话框。 接着在“属性”窗口中双击此方法,打开用户自定义过程代码框输入:waitmymethod”window。 (3)接上一小题操作,双击“Ok”命令按钮,编写该按钮的 Click 事件代码:THIsFORMMymethod。 (4)接上一小题操作,双击“Can
6、cel”命令按钮,编写该按钮的 Click 事件代码:THIsFORMRELEASE。 单击“常用”工具栏中的“运行”按钮查看结果,将表单文件保存到考生文件夹下。)解析:二、简单应用题(总题数:1,分数:2.00)2.(1)利用查询设计器创建查询,从xuesheng 和 cheni 表中找出所有 1982 年出生的汉族学生记录。查询结果包含“学号”、“姓名”、“数学”、“英语”和“信息技术”5 个字段:各记录按“学号”降序排序;查询去向为表 tablel。最后将查询保存在 querylqpr 文件中,并运行该查询。(2)首先创建数据库 cj m,并向其中添加 xuesheng 表和 cheni
7、 表。然后在数据库中创建视图 viewl:利用该视图只能查询数学、英语和信息技术 3 门课中至少有一门不及格(小于 60 分)的学生记录;查询结果包含“学号”、“姓名”、“数学”、“英语”和“信息技术”5 个字段;各记录按学号降序排序。最后利用刚创建的视图 viewl 查询视图中的全部信息,并将查询结果存放在表 table2 中。(分数:2.00)_正确答案:(正确答案:(1)【审题分析】本题考查的是在查询设计器中新建查询的操作。由于涉及两个表的操作,因此在操作过程中要注意确认查询输出的字段来源于哪个数据表。 本题的关键在于筛选条件的设置。由于表中没有“年份”字段,因此,要得到年份数值必须通过
8、求年份的函数 YEAR()取得。在“筛选”选项卡的“字段名”中选择“表达式”,然后在“表达式生成器”对话框中利用函数取“xuesheng出生日期”中的年份值,作为筛选条件的“字段名”。 【操作步骤】 步骤 1:在命令窗口执行命令:CREATE QUERYqueryl,打开查询设计器,将考生文件夹下的 xuesheng 和 cheng,ji 表添加到查询设计器中。 步骤 2:添加两个表后,系统弹出“联接条件”对话框,自动查找两个表中相匹配的字段进行联接,单击“确定”按钮设置两个表的联系。 步骤 3:依次双击 xuesheng 表中的“学号”、“姓名”字段和 chengji 表中的“数学”、“英语
9、”、“信息技术”字段将其添加到“字段”选项卡的“选定字段”列表中。 步骤 4:在“筛选”选项卡中,选择“字段名”中的“表达式”,弹出“表达式生成器”对话框,然后在“表达式”框中输入“YEAR(Xuesheng出生日期)”,单击“确定”按钮返回“筛选”选项卡,接着设置“条件”为“=”,在“实例”框中输入“1982”,在“逻辑”下拉框中选择“AND”;在第二行中,选择“字段名”为“Xuesheng民族”,“条件”为“=”,在“实例”框中输入“汉”。 步骤 5:在“排序依据”选项卡内双击“选定字列表框中的“Xuesheng学号”字段,将字段添加到“排序条件”列表框中,并在“排序选项”中选择“降序”。
10、 步骤 6:执行【查询】一【查询去向】菜单命令,在弹出的“查询去向”对话框中单击“表”图标按钮,接着在“表名”中输入文件名 tablel,单击“确定”按钮。 步骤 7:最后单击“常用”工具栏中的“运行”按钮运行查询(在命令窗口输入 BROWSE 命令可查看查询结果),将查询文件保存到考生文件夹下。 (2)【审题分析】本题主要考查了利用 SQL 命令定义视图及 SQL 的简单查询。根据题目要求,本题可以分两步完成,首先是建立视图,然后通过 SQL 查询视图中的记录。 本题的关键是视图的定义,SQL 简单查询只需套用最基本的查询命令格式即可完成。而定义视图的过程中关键是筛选条件的设置,根据题意,要
11、查询“数学”、“英语”和“信息技术”3 门课中至少有一门不及格的记录,也就是说查找学生的 3 门成绩中有“数学”、“英语”或“信息技术”小于 60 分的记录,因此多个条件之间的关系为逻辑或(OR)的关系。 本题中,视图的建立同样可以通过视图设计器完成,同样需要注意的是在视图设计器中,正确设置各筛选条件。 【操作步骤】 步骤 1:在命令窗口执行命令:MODIFY DATABASEcjm,新建数据库并打开数据库设计器。在数据库设计器中右击鼠标,选择【添加表】快捷菜单命令,在弹出的“打开”对话框中双击 xuesheng 表,将表添加到数据库中,以同样的方法将 chengji 表添加到数据库中。 步骤
12、 2:在命令窗口执行如下 SQL 命令语句建立视图: (注意:以上 SQL 语句查询语句部分是通过视图设计器生成,大家也可以直接在视图设计器中建立。) 步骤 3:在命令窗口执行如下 SQL 查询命令语句保存查询结果;)解析:三、综合应用题(总题数:1,分数:2.00)3.首先利用表设计器在考生文件夹下建立表 table3,表结构如下: 民族 字符型(4) 数学平均分 数值型(6,2) 英语平均分 数值型(6,2) 然后在考生文件夹下创建一个下拉式菜单 mymenummx,并生成菜单程序 mymenumpr。运行该菜单程序时会在当前 VFP 系统菜单的末尾追加一个“考试”子菜单,如图所示。(分数
13、:2.00)_正确答案:(正确答案:本大题考查了表的基本操作;菜单的建立及使用;SQL 简单计算查询及数据表记录的修改。 表的建立和菜单的建立都属于比较基本的操作,注意向系统菜单追加菜单项时,应在菜单设计器中打开“常规选项”对话框进行设置。本题的关键是菜单命令中 SQL 查询、插入和更新语句的设计。编写程序代码基本思路如下: 首先利用 SQL 计算查询,统计“汉”族学生的“数学”和“英语”平均成绩,将结果保存到数组中,再通过数组向 table3 表插入记录;以同样的方法再将非“汉”族学生的“数学”和“英语”平均成绩插入到 table3 表中。 向表中添加记录时,可以先通过 vFP 的添加表记录
14、命令Append Blank 在表末尾先增加一个空白记录,然后通过 replace 命令修改字段值,完成记录的添加。 【操作步骤】 步骤 1:在命令窗口执行命令:CREATE table,打开数据表设计器新建表。 步骤 2:根据题意,在表设计器中逐行输入每个字段的字段名,并设置字段类型和宽度,然后单击“确定”按钮,此时系统会弹出一个对话框询问“现在输入数据记录吗?”,本题不需要录入数据,单击“否”按钮。 步骤3:在命令窗口执行命令:CREATE MENu mxmenu, 在弹出的“新建菜单”对话框中单击“菜单”图标按钮,打开菜单设计器。 步骤 4:在菜单设计器“菜单名称”列的文本框中输入“考试
15、”,“结果”下拉框中选择为“子菜单”,单击“创建”按钮进入下级菜单设计,在“菜单名称”列的第 1、2 行文本框中依次输入子菜单名“计算”、“返回”,将两个子菜单的“结果”都设置为“过程”,分别单击两个子菜单行的“创建”命令按钮,打开过程编辑框编写过程代码。 步骤 5:两个子菜单的过程代码如下: 步骤6:执行【显示】一【常规选项】菜单命令,在“位置”区域选中“追加”单选项,则新建立的子菜单会在当前 Visual FoxPro 系统菜单后显示。 步骤 7:执行【菜单】一【生成】菜单命令,在弹出的 Visual FoxPro 对话框中单击“是”按钮,接着系统会弹出“生成菜单”对话框,单击“生成”按钮生成一个可执行的菜单文件。 步骤 8:在命令窗口执行命令:DO mymenumpr,运行菜单,并执行“计算”菜单命令。)解析: