1、国家二级 VF机试(操作题)模拟试卷 190及答案与解析 一、基本操作题 1 (1)建立一个 “客户 ”表,表结构如下: 客户编号 C(8) 客户名称 C(8) 联系地址 C(30) 联系电话 C(11) 电子邮件 C(20) (2)建立一个 “客户 ”数据库,并将 “客户 ”表添加到该数据库中。 (3)将如下记录插入到 “客户 ”表中。(4)利用报表向导牛成一个 “客户 ”(报表文件名 )报表,报表的内容包含客户表的全部字段。报表的标题为 “客户 ”,其他各项取默认值。 二、简单应用题 2 (1)建立一个文件名和表单名均 为 two的表单,然后为表单 two建立一个名为 quit的新方法 (
2、单击选择表单后,从 “表单 ”菜单中选择 “新建方法程序 ”命令 ),并在该方法中写一条语句 Thisform release;最后向表单中添加一个命令按钮(Command1),并在该命令按钮的 Click事件中写一条调用新方法 quit的讯句。 (2)使用 SQL语句计算每个歌手的最高分、最低分和平均分,并将结果存储到result dbf表中 (包含 “歌手姓名 ”、 “最高分 ”、 “最低分 ”和 “平均分 ”4个字段 ),要求结果按 “平均分 ”降序。 注意:按 “歌 手姓名 ”分组;每个歌手的最高分、最低分和平均分由评分表中的“分数 ”字段计算得出。 三、综合应用题 3 打开表单文件
3、sapp,并完成如下操作 (不得有多余操作 ): 将 “课程 ”表添加到表单的数据环境中。 使列表框 List1中的数据项为 “课程 ”表中的课程名 (课程课程名 )。 单击列表框中的数据项时,统计选修了所选课程的学生人数 (从 “考试成绩 ”表 ),并将结果存储在以课程名命名的表中,表中只有一个字段 “人数 ”。 添加一个命令按钮 Command1,单击该按钮时关闭表单。 说明:完成该程序后必须运行,并且分别统计选修了 “数据库 ”和 “操作系统 ”课程的学生人数。 国家二级 VF机试(操作题)模拟试卷 190答案与解析 一、基本操作题 1 【正确答案】 (1) 在命令窗口执行命令: CRE
4、ATE客户,打开表设计器新建表(注意:当前没有打开的数据库 )。 根据题意,在表设计器中逐行输入每个字段的字段名,并设置字段类型和宽度(注意:字母 C表示为字符型数据 ),然后单击 “确定 ”按钮,此时系统会弹出一个对话框询问 “现在输入数据记录吗 ?”,单击 “是 ”按钮。 (2)接上小题 操作,在弹出的输入表记录界面中输入题中所要求的记录,输入完毕后直接记录输入界而。 (3) 在命令窗口执行命令: MODIFY DATABASE客户,新建数据库并打开数据库设计器。 在数据库设计器中右击鼠标,选择【添加表】快捷菜单命令,在弹出的 “打开 ”对话框中双击 “客户 ”表,将表添加到数据库中。 (
5、4) 执行【文件】 【新建】菜单命令,或单击 “常用 ”工具栏的 “新建 ”按钮,在弹出的 “新建 ”对话框中选中 “报表 ”选项,然后单击 “向导 ”图标按钮,系统弹出 “向导选取 ”对话框,选中 “报表向导 ”项, 单击 “确定 ”按钮,启动报表向导。 在报表向导的 “步骤 1-字段选取 ”界面的 “数据库和表 ”下选中 “客户 ”表,将 “可用字段 “中全部字段添加到 “选定字段 ”中,直接单击 “完成 ”按钮进入向导最后一个界面。 在报表向导的 “步骤 6-完成 ”界面的 “报表标题 ”框中输入 “客户 ”,单击 “完成 ”按钮,在 “另存为 ”对话框的 “保存报表为: ”框中输入报表
6、文件名 “客户 ”,单击 “保存 ”按钮。 【试题解析】 本题考查了表的基本操作;数据库的基本操作;报表向导的使用。 建立自由表可以在表设计器中进行,注意 建立自由表前要先关闭所有打开的数据库,否则所建立的数据表可能是数据库表;将数据表添加到数据库中可以在数据库设计器中操作;报表向导操作比较简单,启动报表向导后,在各向导提示界面完成相应的操作即可。 二、简单应用题 2 【正确答案】 (1) 步骤 1:命令窗口执行: CREATE FORM two,打开表单设计器新建表单。 步骤 2:执行【表单】 【新建方法程序】菜单命令,在 “新建方法程序 ”对话框的 “名称 ”文本框中输入 “quit”,单
7、击 “添加 ”按钮新增方法,然后关闭对话框。 步骤 3:在 “属性 ”窗口中双击 quit方法,打开用户自定义过程代码框输入:THISFORM RELEASE。 步骤 4:通过 “表单控件 ”工具栏向表单添加一个命令按钮 (Command1),双击命令按钮,编写该按钮的 Click事件代码: THISFORM QUIT。 步骤 5:单击 “常用 ”工具栏中的 “运行 ”按钮查看结果,将表单文件保存到考生文件夹下。 (2) 在命令窗口执行如下 SQL命令语句执行查询: 1 SELECT。歌手表歌手姓名, MAX(评分表分数 )AS最高分,; 2 MIN(评分表分数 )AS最低分, AVG(评分表
8、分数 )AS平均分; 3 FROM大奖赛 !歌手表 INNER JOIN大奖赛 !评分表; 4 ON歌手表歌手编号 =评分表歌手编号; 5 GROUP BY歌手表歌手姓名; 6 ORDER BY 4 DESC ; 7 TNTO TARLE result (注意:以上 SQL查询语句是通过查询设计器生成,大家也可以直接在查询设计器中完成查询。 ) 【试题解析】 (1)本题考查的是表单方法的创建。在 Visual FoxPro中,用户首先应打开 “新建方法程序 ”对话框定义新方法名;然后在 “属性 ”面板中定义找到该方法并编写该方法的功能代码;方法建立完毕后,用户可以像调用表单中其他方法一样调用新
9、建的方法。 (2)本题主要考查了 SQL分组与计算查询。本题在输出字段中除 “歌手姓名 ”字段是表中原有的字段外,最高分、最低分和平均分都需要根据 “分数 ”字段生成,分别使用计算函数 MAX()、 MIN()和 AVG()。由于是求每个歌手的最高分、最低分和平均分,可以 根据 “歌手姓名 ”字段进行分组计算。 也可以借助查询设计器生成本题的 SQL语句。 三、综合应用题 3 【正确答案】 步骤 1:命令窗口执行: OPEN DATABASE学生管理 ,打开 “学生管理 ”数据库环境。 步骤 2:命令窗口执行: MODIFY FORM sapp,修改 sapp表单。右击表单选择【数据环境】,在
10、表单数据环境中单击右键选择【添加】,在 “添加表或视图 ”对话框中双击 “课程 ”,将表添加到数据环境中。 步骤 3:修改列表框 (List1)的 “RowSource Type”属性值为: 6-字段;再修改“RowSource”属性值为:课程课程名。 步骤 4:列表框 (List1)Click事件代码如下: *列表框 (List1)的 Click事件代码 * aa=课程课程名 SELECT COUNT(*)AS人数 FROM考试成绩; WHERE考试成绩课程编号 =课程课程编号; INTO TABLE &aa 步骤 5:通过 “表单控件 ”工具栏向表单添加一个命令按钮,编写按钮的 Click
11、事件代码 : THISFORM RELEASE。 步骤 6:单击 “常用 ”工具栏中的 “运行 ”按钮查看结果,并分别单击 “数据库 ”和 “操作系统 ”,生成表文件。 【试题解析】 本题考查了表单及控件的常用属性和方法的设置; SQL简单的计算查询。 本题关键是怎样获取列表框所选条目的值。由于已经将 “课程 ”表添加到数据环境中,当表单运行时, “课程 ”被打开,其所在工作区即成为当前工作区,又因为列表框中数据与 “课程 ”表的 “课程名 ”字段绑定,所以列表框中所选条目的值,等于 “课程 ”表当前记录的 “课程名 ”的值。 再利用 SQL计算查询,在 “考试成绩 ”表中查找并统计列表框中被选定条目 (即课程名 )的 “选课人数 ”,利用 COUNT()计数函数可以统计 “人数 ”。 进行 SQL语句设计时,因为 “考试成绩 ”表中没有 “课程名 ”字段,但题目给出的筛选条件是根据 “课程名 ”进行统计选修课程的学生人数,所以可以将查找条件设置为 “考试成绩 ”表的 “课程号 ”与 “课程 ”表当前记录 (即列表框中被选课程名对应的记录 )的 “课程号 ”相等为条件,进行查询统计的操作。