1、国家二级 VF机试(操作题)模拟试卷 438及答案解析(总分:6.00,做题时间:90 分钟)一、基本操作题(总题数:1,分数:2.00)1.请在考生文件夹下完成下列基本操作题:在考生文件夹下有一表单文件 formonescx 和一个自定义类库文件 classlibonevcx;打开表单文件 formone,scx,然后在表单设计器环境下完成如下操作:(1)将表单的标题设置为“简单操作”,并使表单不能最大化。(2)为表单添加一个名为 np的属性,其初始值为系统当前日期(不含时间)。(3)为表单添加一个名为 nm的方法,其代码如下:thisformnp-thisformnp+l waitdtoc
2、(thisformnp)window(4)在表单中添加一个 mybutton按钮,该按钮类定义于类库文件 classlibonevcx。将该按钮的 name属性设置为 mcb,然后设置其 Click事件代码,其功能是调用表单的 nm方法。(分数:2.00)_二、简单应用题(总题数:1,分数:2.00)2.在考生文件夹下完成下列操作:用户文件下以存在 client(用户)表、topic(主题)表和 reply(回复)表。(1)考生文件夹下已有文件 poneprg,但其中有 4处内容缺失,请填充之。不要修改程序的其他内容。程序的功能是:根据 reply表统计各主题帖的回复数,并将统计值存入 top
3、ic表中的已存在的“回复数”字段。最后要运行该程序文件。(2)使用 SELECT语句查询用户名为 chengguowe的客户发布的主题的所有回复。查询结果包含编号、用户名、回复时间和主题帖编号四项内容,各记录按主题帖编号升序进行排序,主题帖编号相同再按回复时间升序排序,查询结果存放在表 tableone中。最后将该语句保存在命令文件ptwoprg 中。(分数:2.00)_三、综合应用题(总题数:1,分数:2.00)3.在考生文件夹下完成下列操作:在考生文件夹下创建一个下拉式菜单 mymenumnx,并生成菜单程序mymenumpr。运行该菜单程序时会在当前 vfp系统菜单的末尾追加一个“考试”
4、子菜单,如图 3-15所示。(分数:2.00)_国家二级 VF机试(操作题)模拟试卷 438答案解析(总分:6.00,做题时间:90 分钟)一、基本操作题(总题数:1,分数:2.00)1.请在考生文件夹下完成下列基本操作题:在考生文件夹下有一表单文件 formonescx 和一个自定义类库文件 classlibonevcx;打开表单文件 formone,scx,然后在表单设计器环境下完成如下操作:(1)将表单的标题设置为“简单操作”,并使表单不能最大化。(2)为表单添加一个名为 np的属性,其初始值为系统当前日期(不含时间)。(3)为表单添加一个名为 nm的方法,其代码如下:thisformn
5、p-thisformnp+l waitdtoc(thisformnp)window(4)在表单中添加一个 mybutton按钮,该按钮类定义于类库文件 classlibonevcx。将该按钮的 name属性设置为 mcb,然后设置其 Click事件代码,其功能是调用表单的 nm方法。(分数:2.00)_正确答案:(正确答案:(1)打开 formone scx 表单文件。 选中表单,在属性窗口修改表单属性,如表 421所示。 (2)选择“表单”菜单下的“新建属性”子菜单,弹出“新建属性”对话框。 在“名称”后面的文本框输入新属性的名称“np”,如图 493所示,然后单击“添加”按钮完成属性的建立
6、,再单击“关闭”按钮关闭该对话框。 选中表单,通过属性窗口修改表单的 np属性,设置为“=date()”。 (3)选择“表单”菜单下的“新建方法程序”子菜单,弹出“新建方法程序”对话框。 在“名称”后面的文本框输入新属性的名称“nm”,然后单击“添加”按钮完成属性的建立,再单击“关闭”按钮关闭该对话框。 在表单上单击鼠标右键,弹出快捷菜单,选择“代码”,打开代码边界界面。 在“过程”中选择 nm,然后输入如下代码: thisformnp=thisformnp+1 wait dtoc(thisformnp) window 关闭代码编辑窗口,保存表单。 (4)单击“表单控件”工具栏上的“查看类”按
7、钮,然后选择“添加”。 弹出“打开”对话框中,选择考生目录下的类库文件classlibonevcx,如图 494所示,单击“打开”按钮完成类库文件的添加。 )解析:解析:本大题考查了表单设计的设计和使用、表单新属性和方法的添加、自定义类的使用。 打开表单设计器后,主菜单上有一个“表单”项,其下来菜单里面有“新建属性”和“新建方法程序”两个子菜单项,用来添加新属性和新方法。二、简单应用题(总题数:1,分数:2.00)2.在考生文件夹下完成下列操作:用户文件下以存在 client(用户)表、topic(主题)表和 reply(回复)表。(1)考生文件夹下已有文件 poneprg,但其中有 4处内容
8、缺失,请填充之。不要修改程序的其他内容。程序的功能是:根据 reply表统计各主题帖的回复数,并将统计值存入 topic表中的已存在的“回复数”字段。最后要运行该程序文件。(2)使用 SELECT语句查询用户名为 chengguowe的客户发布的主题的所有回复。查询结果包含编号、用户名、回复时间和主题帖编号四项内容,各记录按主题帖编号升序进行排序,主题帖编号相同再按回复时间升序排序,查询结果存放在表 tableone中。最后将该语句保存在命令文件ptwoprg 中。(分数:2.00)_正确答案:(正确答案:(1)步骤 1:打开考生目录下的 poneprg 文件。 步骤 2:(1)处行应改为“i
9、ndex on主题帖编号 to zhuti“。 步骤 3:(2)处行应改为“set relation to 编号 into 2”。 步骤 4:(3)处行应改为“bh=编号”。 步骤 5:(4)处行应改为“do while 主题帖编号=bh“。 步骤 6:保存并运行该程序。 程序编写和 SQL语句。 (2)步骤 1:建立菜单可以使用菜单命令的方式,选择“文件”菜单下的“新建”自命令,弹出“新建”对话框,文件类型选择“程序”。 步骤 2:单击“新建文件”图标按钮打开程序编辑界面。 步骤 3:输入 SELECT查询命令: select reply编号,reply用户名,reply回复时间,reply
10、主题帖编号; from client,topic,reply; where client用户名=topic用户名 and to_pic编号=reply 主题帖编号 and client用户名=“chengguowe”; order by reply主题帖编号,reply回复时间; into table tableone 步骤 4:单击菜单工具栏的“保存”按钮,弹出“另存为”对话框,输入程序名为:ptwoprg,保存到考生文件夹。 步骤 5:执行该程序。 程序建立与使用和 SQL语句。)解析:解析:(1)本题考查了程序的编写和 SQL。 程序的功能是根据 reply表统计各主题帖的回复数,并将统
11、计值存入 topic表中的已存在的“回复数”字段。“ (1)”处行是建立索引,补充索引关键字。“(2)”处行是建立临时关系,需要补充“编号”。“(3)”处行的变量用于保存“编号”,在内层循环中判断“编号”和“主题帖编号”是否一致。 (2)本题考查程序和 SQL的使用。 题目要求查询用户名为“chengguowe”的客户发布的主题的所有回复。查询结果包含编号、用户名、回复时间和主题帖编号四项内容,各记录按主题帖编号升序排序,主题帖编号相同再按回复时间升序排序,查询结果存放在表tableone中。因此需要在查询 client,topic 和 reply三个表,筛选条件是:client用户名=top
12、ic用户名 and topic编号=reply主题帖编号 and client用户名=“chengguowe”,排序依据是:order by reply主题帖编号,reply回复时间。三、综合应用题(总题数:1,分数:2.00)3.在考生文件夹下完成下列操作:在考生文件夹下创建一个下拉式菜单 mymenumnx,并生成菜单程序mymenumpr。运行该菜单程序时会在当前 vfp系统菜单的末尾追加一个“考试”子菜单,如图 3-15所示。(分数:2.00)_正确答案:(正确答案:步骤 1:选择“文件”菜单下的“新建”子菜单,弹出新建对话框,文件类型选择“菜单”,单击,然后单击“新建文件”图标按钮。 步骤 2:在弹出的新建菜单窗口中单击“菜单”图标按钮,打开菜单设计器,在“菜单名称”输入“考试”,“结果”选择“子菜单”。 步骤 3:单击“选项”列的“创建”按钮弹出菜单子项的设计,建立如表 422所示的菜单项。 )解析:解析:本大题考查了菜单的设计和使用。 可以通过菜单设计器来创建的菜单,生成一个菜单定义文件(MNX),存储了菜单系统的各项定义。通过菜单生成程序,可以将菜单定义文件编译为可执行的菜单程序文件(MPR),以便在应用程序中使用。