1、国家二级 VF 机试-试卷 102 及答案解析(总分:12.00,做题时间:90 分钟)一、基本操作题(总题数:2,分数:4.00)1.基本操作题()(分数:2.00)_2.(1)打开表单 one,如图 1-10 所示,通过设置控件的相关属性,使得表单运行时的开始焦点在“打开”命令按钮,并且接下来的焦点的移动顺序是“关闭”和“退出”。 (分数:2.00)_二、简单应用题(总题数:2,分数:4.00)3.简单应用题()(分数:2.00)_4.(1)在数据库“职员管理”下建立视图“view1”,并将定义视图的代码放到考生文件夹下的“vicw1txt”中。具体要求是:视图中的数据取自表“职称”和“员
2、工信息”。按“职工编号”排序(升序)。 (2)设计要求如下的“登录”表单“bd1”:当用户输入用户名和口令并单击“确认”按钮后,检验其输入的用户名和口令是否匹配,(假定用户名为“user”,密码为“123456”)。如正确,则显示“登录成功,欢迎使用!”字样并关闭表单;若不正确,则显示“用户名或口令错误,请重新输入”字样,如果连续 3 次输入不正确,则显示“用户名与口令不正确,登录失败”字样并关闭装单。(分数:2.00)_三、综合应用题(总题数:2,分数:4.00)5.综合应用题()(分数:2.00)_6.在考生文件夹下有“公司”数据库,数据库中有表“加班费”和“加班登记”。 请编写并运行符合
3、下列要求的程序: 设计一个名为“cd2”的菜单,菜单中有两个菜单项“计算”和“关闭”。 程序运行时,单击“计算”菜单项应完成下列操作: 计算“加班登记”表的每个员工的加班费,计算方法是: 加班费=次数*(加班类型对应的“加班费”表的“加班费”字段)的总和。 根据上面的结果,将员工的职工编号、姓名、加班费存储到自由表“result2”中,并按加班费降序排列。如果加班费相等,则按职工编号的升序排列。 单击“关闭”菜单项,程序终止运行。(分数:2.00)_国家二级 VF 机试-试卷 102 答案解析(总分:12.00,做题时间:90 分钟)一、基本操作题(总题数:2,分数:4.00)1.基本操作题(
4、)(分数:2.00)_解析:2.(1)打开表单 one,如图 1-10 所示,通过设置控件的相关属性,使得表单运行时的开始焦点在“打开”命令按钮,并且接下来的焦点的移动顺序是“关闭”和“退出”。 (分数:2.00)_正确答案:(正确答案:(1)在命令窗口执行命令: MODIFY FORM one ,打开表单设计器修改表单。 在“属性”面板的下拉框中选择表单对象,在“全部”选项卡中修改控件对象属性值,见表 2-12。 单击“常用”工具栏中的“运行”按钮查看结果,将表单文件保存到考生文件夹下。 (2)在命令窗口执行命令: MODIFY FORM two ,打开表单设计器修改表单。 右击工具栏的空白
5、区域,选择【布局】快捷菜单命令,打开表单的“布局”工具栏(如果表单设计器中没有显示该工具栏,则执行该操作)。 同时选中表单中的 3 个按钮,然后单击“布局”工具栏中的“项边对齐”按钮(第 3 个图标按钮),保存表单修改。如图 2-34 所示。 )解析:解析:本大题考查了表单控件常用属性的设置;“布局”工具栏的使用;SQL 定义功能和操作功能。在表单设计过程中,可以通过 TabIndex 属性设置控件获得焦点的先后次序,通过“布局”工具栏可以方便地调整表单窗口中被选控件的相对大小和位置。 通过 SQL 定义语句的 CREATE TABLE 命令可以创建一个数据表,本题中可直接套用固定格式创建表,
6、注意表结构内容要用圆括号括起来。 本大题中所涉及的SQL-INSERT 语句也可直接套用固定 SQL 插入语句格式完成操作。二、简单应用题(总题数:2,分数:4.00)3.简单应用题()(分数:2.00)_解析:4.(1)在数据库“职员管理”下建立视图“view1”,并将定义视图的代码放到考生文件夹下的“vicw1txt”中。具体要求是:视图中的数据取自表“职称”和“员工信息”。按“职工编号”排序(升序)。 (2)设计要求如下的“登录”表单“bd1”:当用户输入用户名和口令并单击“确认”按钮后,检验其输入的用户名和口令是否匹配,(假定用户名为“user”,密码为“123456”)。如正确,则显
7、示“登录成功,欢迎使用!”字样并关闭表单;若不正确,则显示“用户名或口令错误,请重新输入”字样,如果连续 3 次输入不正确,则显示“用户名与口令不正确,登录失败”字样并关闭装单。(分数:2.00)_正确答案:(正确答案:(1)在命令窗口中输入命令: OPEN DATABASE 职员管理dbc(回车执行命令) CREATE VIEW view1 As SELECT 员工信息*,职称名称 FROM 员工信息,职称 WHERE 职称职称编号=员工信息职称编号(回车执行命令) 新建文本义件“vlcw1txt”,将步骤输入的命令复制并保存到文本文件“view1txt”中。 (2)选择【文件】【新建】命令
8、,选掸“表单”,单击“新建文件”按钮打开表单设计器,单击表单控件工具栏上的“标签”控件图标,为表单添加两个标签Label1、Label2,单击表单控件工具栏上的“文本框”控件图标,为表单添加两个文本框Text1、Text2,单击表单控件工具栏上的“命令按钮”控件图标,为表单添加一个命令按钮 Command1。 分别选择两个标签,在标签属性窗口中将 Label1 的 Caption 属性值修改为“用户名”,将 Label2 的Caption 属性值修改为“口令”,如图 97-1 所示。 )解析:三、综合应用题(总题数:2,分数:4.00)5.综合应用题()(分数:2.00)_解析:6.在考生文件
9、夹下有“公司”数据库,数据库中有表“加班费”和“加班登记”。 请编写并运行符合下列要求的程序: 设计一个名为“cd2”的菜单,菜单中有两个菜单项“计算”和“关闭”。 程序运行时,单击“计算”菜单项应完成下列操作: 计算“加班登记”表的每个员工的加班费,计算方法是: 加班费=次数*(加班类型对应的“加班费”表的“加班费”字段)的总和。 根据上面的结果,将员工的职工编号、姓名、加班费存储到自由表“result2”中,并按加班费降序排列。如果加班费相等,则按职工编号的升序排列。 单击“关闭”菜单项,程序终止运行。(分数:2.00)_正确答案:(正确答案:选择【文件】【新建】命令,选择“菜单”,单击“
10、新建文件”按钮,再单击“菜单”按钮,打开菜单设计器,在“菜单名称”中输入“计算”,在“结果”下拉列表框中选择“过程”,单击“创建”按钮创建“计算”菜单过程,在菜单过程代码编辑窗口中输入以下代码: SELECT*INTO ARRAY aa FROM 加班费 FOR i=1 To ALEN(aa)2 UPDATE 加班登记 SET 加班费=加班次数*aa(i,2)WHERE 加班类型=aa(i,1) NEXT SELECT 员工信息职工编号,姓名,SUM(加班费)AS 加班费INTO TABLE result2 FROM 员工信息,加班登记 WHERE 员工信息职工编号=加班登记职工编号 GROUP BY 员工信息职工编号 ORDER BY 加班费 DESC,员工信息职工编号 关闭菜单过程代码编辑窗口回到菜单设计器。 单击下一行,输入菜单名称“关闭”,在“结果”下拉列表框中选择“命令”,在右边的“命令”文本框中编写程序代码: SET SYSMENU TO DEFAULT 选择【菜单】【生成】命令,将菜单保存为“cd2”,生成一个菜单文件“cd2mpr”。关闭菜单设计窗口,在命令窗口中输入命令:DO cd2mpr,执行“计算”菜单程序。)解析: