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