1、国家二级 VF机试(操作题)模拟试卷 533及答案与解析 一、基本操作题 1 打开考生文件夹下的 DB数据库,完成如下基本操作: (1)为表 TABB增加一个字段,字段名为 “日期 ”,数据类型为日期型。 (2)使用 SQL UPDATE语句将表 TABB中所有记录的 “日期 ”字段的值修改为20051001,并将 SQL语句存储到名为 TWO PRG的文件中。 (3)用 SQL语句将表 TABA中的记录复制到另外一个与它结构相同的表 TABC中,并消除其中的重复记录,并且对于重复多次的记录,只复制一条 记录的数据。最后将 SQL的 SELECT语句存储到名为 THREE PRG的文件中。 (
2、4)使用报表向导建立一个简单报表。要求选择 TABA中的所有字段;记录不分组;报表样式为随意式;列数为 1,字段布局为 “列 ”,方向为 “横向 ”;排序字段为NO,升序;报表标题为 “计算结果一览表 ”;报表文件名为 P_ONE。 二、简单应用题 2 打开考生文件夹下的 DB数据库,完成如下简单应用: (1)编写一个名为FOUR PRG的程序,根据表 TABA中所有记录的 a、 b、 c三个字段的值,计算各记录的一元二次方程的两个根 x1和 x2,并将两个根 x1和 x2写到对应的字段 x1和 x2中,如果无实数解,在 note字段中写入 “无实数解 ”。提示:平方根函数为SQRT();程序
3、编写完成后,运行该程序计算一元二次方程的两个根。 (注意:一元二次方程公式如下。 ) (2)打开名为 testA的表单,其中有两个命令按钮,界面要求如下: 设置两个按钮的高度均为 30,宽度均为 80, “退出 ”按钮与 “查询 ”按钮顶边对齐。 “查询 ”按钮的功能是在该按钮的 Click事件中使用SQL的 SELECT命令从表 TABA中查询 “无实数解 ”的记录并存储到表 TABD中。 “退出 ”按钮的功能是关闭并释放表单。 请按要求完成表单的设计,表单设计完成后,运行该表单,并单击 “查询 ”按钮进行查询。 三、综合应用题 3 打开考生文件夹下的 SDB数据库,完成如下综合应用: 创建
4、一个标题名为 “查询 ”、文件名为 testb的表单,如下图所示。表单要求如下: (1)为表单建立数据环境,并向数据环境中添加 “学生表 ”。 (2)表单启动后自动居中。 (3)向该表单中添加一个标签、一个文本框、一个表格和两个命令按钮。 标签对象 (Label1)的标题文本为 “学生注册日期 ”,文本框 (Text1)用于输入学生注册日期,表格 (Gridl)用于显示结果。 命令按钮的功能如下: a “查询 ”按钮 (Command1)的功能是在该按钮的 Click事件中使用 SQL的 SELECT命令从 “学生表 ”中查询学生注册日期等于文本框中指定的注册日期的学生的学号、姓名、年龄、性别
5、、班级和注册日期,查询结果按年龄降序排序,并将查询结果在表格控件中显示,同时将查询结果存储到表 TABE中。 注意:查询结果存储到表 TABE之前,应将表 TABE中的记录清空。 TABE表是已经建立好的表,它与学生表的结构不完全一样,多两个字段。 b “退出 ”按钮 (Command2)的功能是关闭并释放表单。 注意:需将表格控件的RecordSourceType属性值设置为 “4一 SQL说明 ”。 表单设计完成后,运行该表单,查询注册日期等于 2005年 9月 2日的学生信息。 国家二级 VF机试(操作题)模拟试卷 533答案与解析 一、基本操作题 1 【正确答案】 【操作步骤】 (1)
6、打开考生文件夹下的 DB数据库,在数据库设计器中右键单击 TABB表,在弹出的快捷菜单中选择 “修改 ”项,在表设计器窗口中为表添加字段 “日期 ”,类型为日期型。 (2)新 建一个程序 two,在其中输入 UPDATE tabb SET日期 2005 10 01 最后保存并运行程序。 (3)新建一个程序 three,在其中输入如下命令。 *“three”程序文件中的代码 * SELECT DISTINCT*; FROM TABA; INTO TABLE TABC dbf * 最后保存并运行程序。 (4)通过报表向导建立报表,在 “字段选取 ”对话框中选中 “TABA”表,并将其中的所有字段添
7、加到 “选定字段 ”框中;在 “分组依据 ”对话框中直接单击 “下一步 ”按钮;在 “选择报表样式 ”对话框中选择随意式;在 “定义报表布局 ”对话框中选择 “列数 ”为1,选中 “字段布局 ”列中的 “列 ”,选中 “方向 ”列中的 “横向 ”,然后单击 “下一步 ”按钮;在 “排序记录 ”对话框中选中 “升序 ”,并将 “No”字段添加到选定字段框中;最后定义报表标题为 “计算结果一览表 ”,并保存报表为 “P_ONE”。 二、简单应用题 2 【正确答案】 (1)【操作步骤】 新建程序 four,并输入以下命令: *“four”程序文件中的代码 * CLOSE ALL USE TABA S
8、CAN IF A 0 AND B*B 4*A*C 0 REPL x1 WITH( B SQRT(B*B 4*A*C) (2*A), x2 WITH( B SQRT(B*B 4*A*C) (2*A) ELSE REPL NOTE WITH“无实数解 “ ENDIF ENDSCAN * 最后保存运行程序。 (2)【操作步骤】 步骤 1:打开表单 “testA”。 步骤 2:按 Shift的同时选中 “查询 ”和 “退出 ”两个按钮,然后在属性窗口设定它们的 Height属性为 30, Width属性为 80,在系统菜单中选择 “格式 ”“ 对齐 ”“ 顶边对齐 ”。 步骤 3:在 “查询 ”按钮的
9、 Click事件中输入下列代码。 *“three”程序文件中的代码 * SELECT*; FROM TABA; WHERE TABA note “无实数解 ”; INTO TABLE TABD dbf * 步骤 4:在 “退出 ”命令按钮的 Click事件中输入 “ThisForm Release”。保存并运行表单。 三、综合应用题 3 【正确答案】 【操作步骤】 步骤 1:打开数据库,在命令窗口输入 “Crea form testb”,新建一个表单。按题目要求添加控件并修改各控件的属性,如下: 表单的 AutoCenter属性为 “ T真 ”。 表单的 Caption属性为 “查询 ”。 标
10、签的 Caption属性为 “学生注册日期 ”。 命令按钮 1的 Caption属性为 “查询 ”。 命令按钮 2的 Caption属性为 “退出 ”。 表格的 RecordSourceType属性为 “4 SQL说明 ”。 步骤 2:为表单添加数据环境 “学生表 ”。 步骤 3:输入查询按钮的 Click事件代码。 *“查询 ”按钮的 Click事件代码 * CLOSE ALL SELECT*FROM学 生表; WHERE学生表注册日期 CTOD(ThisForm Text1 Value); ORDER BY学生表年龄 DESC; INTO TABLE temp dbf USE TABE DELE ALL PACK APPEND FROM TEMP THISFORM GRID1 RECORDSOURCE “SELECT*FROM学生表 WHERE学生表注册日期 CTOD(ThisForm Text1 Value)INTO CURSOR XX ORDER BY学生表年龄 DESC“ * 步骤 4:输入退出按钮的 Click事件代码 “ThisForm Release”。 步骤 5:保存并按要求运行表单。