1、国家二级 VF机试(操作题)模拟试卷 103及答案与解析 一、基本操作题 1 (1)打开表单 one,向其中添加一个组合框 (Combol),并将其设置为下拉列表框。 (2)在表单 one中,通过 RowSource和 RowSourceTiype属性手工指定组合框 (;omb01的显示条目为 “上海 ”、 “北京 ”(不要使用命令指定这两个属性 )。 (3)向表单 one中添加两个命令按钮 (; ommandl和 Command2,其标题分别为 “统计 ”和 “退出 ”。为 “退出 ”命令按钮的 Click事件写一条命令,执行该命 令时关闭和释放表单。 (4)为表单 one中的 “统计 ”命
2、令按钮的 Click事件写一条 SQL命令,执行该命令时,将 “歌手表 ”中所有 “歌手出生地 ”与组合框 (Combol)指定的内容相同的歌手的全部信息存入自由表 birthplace中。 二、简单应用题 2 (1)歌手比赛分为四个组, “歌手表 ”中的 “歌手编号 ”字段的左边两位表示了该歌手所在的组号。考生文件夹下的程序文件 five prg的功能是:根据 “歌手表 ”计算每个组的歌手人数,将结果填入表 one dbf,表 one dbf 中有两个字段: “组号 ”和“歌 手人数 ”。程序中有 3处错误,请修改并执行程序。注意:只能修改标有错误的语句行,不能修改其他语句,数组名 A不允许
3、修改。 (2)建立一个数据库文件 “歌手大奖赛 dbc”,并将 “歌手表 ”、 “评委表 ”和 “评分表 ”3个自由表添加到该数据库中。使用视图设计器建立视图 songer view,该视图根据 “歌手表 ”、 “评委表 ”和 “评分表 ”建立,视图中的字段项包括: “评委姓名 ”、 “歌手姓名 ”、 “分数 ”,视图中的记录按 “歌手姓名 ”升序、 “分数 ”降序排列。 三、综合应用题 3 考生文件夹下存在数据库 “学籍 ”,其中包含 course和 score表,这两个表存在一对多的联系。 对 “学籍 ”数据库建立文件名为 form2的表单,表单标题为 “课程成绩查看 ”,其中包含两个表格
4、控件。第一个表格控件用于显示 “课程 ”表的记录,第二个表格控件用于显示与 “课程 ”表当前记录对应的 “成绩 ”表中的记录。 表单中还包含一个标题为 “退出 ”的命令按钮,要求单击此按钮退出表单,如图 3-1所示。国家二级 VF机试(操作题)模拟试卷 103答案与解析 一、基本操作题 1 【正确答案】 (1) 命令窗口执行: MODIFY FORM one,打开 表单设计器新建表单。 通过 “表单控件 ”工具栏向表单添加一个组合框 (Combo1),修改组合框的 Style属性值为: 2-下拉列表框。 (2)接上题操作,修改组合框 (Combol)的 RowSourceType属性值为: 1
5、-值;RowSource属性值为:上海,北京。 (3) 向表单忝加两个命令按钮,修改命令按钮 (Conmaandl)的 Caption属性值为:统计;修改命令按钮 (Command2)的 Caption属性值为:退出。 “退出 ”按钮 click事件代码: THISFORM RELEASSE。 (4)“统计 ”按钮 (Commandl)Click事件代码: 1 SELECT * FROM歌手表; 2 WHERE歌手出生地 =THISFORM COMBO1 DISPLAYVALUE; 3 INTO DBF birthDlace 【试题解析】 本题考查了表单控件的常用属性、事件和方法; SQL简单
6、查询。 通过 “表单控件 ”工具栏可以向表单添加控件,在 “属性 ”面板中可以修改表单及控件的属性值,关闭和释放表单的方法是 RELEASE。 SQL简单查询中,可通过组合框的 DISPLAYVALUE属性获得的值作为筛选条件。 二、简单应用题 2 【正确答案】 (1)步骤 1:在命令窗口执行命令: MODIFY COMMAND five,打开程序文件,文件中的命令代码如下: &根据 ”歌手表 ”计算每个组的歌手人数 1 CLOSE DATA 2 USE one 3 GO ToP 4 WHILE NOT EOF() &错误 5 zuhao=组 号 6 SELECT COUNT(*) FROM歌
7、手表 WHERE 歌手表歌手编号 =zuhao INTO ARRAY A &错误 7 REPLAcE歌手人数 INTO A &错误 8 SKIP 9 ENDDO 修改程序中的错误行,修改后的程序如下: 1 CLOSE DATA 2 USE one 3 GO TOP 4 DO WHILE NOT EOF() 5 zuhao=组号 6 SELECT couNT(*) FROM 歌手表 WHERE LEFT(歌手表歌手编号, 2)=zuhao INTO ARRAY A 7 REPLACE歌手人数 WHTH A1 8 SKIP 9 ENDDO 步骤 2:保存文件修改,在命令窗口执行命令: DO fiv
8、e,执行程序文件。 (1)步骤 1:在命令窗口执行命令: MODIFY DATABADE歌手大奖赛,新建并打开数据库设计器。右击鼠标,选择【添加表】,在 “打开 ”对话框中双击 “歌于表 ”添加到数据库中 同样的方法,将 “评委表 ”和 “评分表 ”添加到数据库中。 步骤 2:在数据库设计器中右击,选择【新建本地视图】打外视图设计器,在“新建本地视图 ”中单击 “新建视图 ”按钮,在 “添加表或视图 ”中依次双击 “歌手表 ”、“评分表 ”和 “评委表 ”(按顺序添加 ),添加到视图设计器中。 步骤 3:双击 “评委表 ”中的 “评委姓名 ”字段, “歌手表 ”中的 “歌手姓名 ”字段和“评分
9、表 ”中的 “分数 ”字段,将 3个字段添 加到 “选定字段 ”中。 步骤 4: “排序依据 ”选项卡中双击 “选定字段 ”列表框中的 “歌于表歌手姓名 ”字段,添加到 “排序条件 ”列表框中;再双击 “选定字段 ”中的 “评分表分数 ”字段添加到 “排序条件 ”列表框中, “排序选项 ”中选择 “降序 ”;以 songer view名保存视图。 【试题解析】 (1)本题考查了 DO WHILE循环语句; SQL简单计算查询; visual FoxPro表记录修改命令。 本题的第一处错误是 DO WHILE循环语句的入口语句格式错误, Do短语是必须的,不可缺少;第二处错误根据 题意得知, “
10、歌手编号 ”字段的左边两位表示该歌手所在的组号,因此,要通过字符串截取函数才能从 “歌手编号 ”字段中得到歌手的组号;第三处错误是 REPLAcE语句的格式错误,使用数组修改当前记录时,应使用 WITH短语,而不是 INTO短语。 (1)本题考查了数据库和表的基本操作;利用视图设计器建立视图。 本题的关键是向数据库设计器中按照一定的顺序依次添加各表,即按照表间联系依次添加表,这样可以保证视图设计器中的各表都存在联接关系。 对 SQL熟悉的考生,可以通过命令方式建立该视图。 三、综合应用题 3 【正确答案】 步骤 1:在命令窗口执行命令: CREATE FORM form2,打开表单设计器新建表
11、单。从 “表单控件 ”工具栏中依次向表单添加两个表格控件和一个命令按钮控件。 步骤 2:在 “属性 ”面板的下拉框中选择表单对象,在 “全部 ”选项卡中修改埘象属性值,如图 4-6所示;表单及控件属性设置,见表 4-4。步骤 3:右击表单选择【数据环境】快捷菜单命令,继续在表单数据环境中单击右键选择【添加】快捷菜单命令,在 “添加表或视图 ”对话框中双击 course和 score表,将表添加到表单的数据环境中。 步骤 4:右击第一个表格 (Gridl)选择【生成器】快捷菜单命令,在 “表格项 ”选项卡中,单击 “数据库和表 ”下方的按钮打开,在弹出的 “打开 ”对话框中选择 course表,
12、将 “可用字段 ”中的字段全部添加到 “选定字段 ”中,单击 “确定 ”按钮;以同样的方法为第二个表格 (Grid2)设置 score表中的字段。如图 4-7所示。 步骤 5:双击 “退出 ”命令按钮(Commandl),在 Click事件中编写程序代码: THISFORM RELEASE。 步骤 6:单击 “常用 ”工具栏中的 “运行 ”按钮查看结果,将表单文件保存到考生文件夹下。【 试题解析】 本大题考查了表单及控件基本属性的设计,如果要将表格控件与数据表内容结合,首先要将数据表添加到表单的数据环境中,然后利用表格生成器建立表格与数据表的联系,如果在数据库中的两个表已存在永久性联接,那么被添加到表单数据环境中的表也会存在这种联系。