1、计算机二级(VF)上机考试 16 及答案解析(总分:-3.00,做题时间:90 分钟)1.基本操作题(共 4 小题,第 1 和 2 题是 7 分、第 3 和 4 题是 8 分) (1)建立项目文件,文件名为my。 (2)将数据库 stu 添加到新建立的项目当中。 (3)从数据库 stu 中永久性地删除数据库表“学生“,并将其从磁盘上删除。 (4)修改表单 wen,将其 name 属性值改为 my。(分数:-1.00)_2.简单应用题(共 2 小题,每题 20 分,计 40 分) (1)使用“一对多表单向导“生成一个名为 sell 的表单。要求从父表 DE 中选择所有字段,从子表 PT 表中选择
2、所有字段,使用“部门号“建立两表之间的关系,样式为“阴影式“;按钮类型为“图片按钮“;排序字段为部门编号(升序);表单标题为“数据维护“。 (2)在考生文件夹下打开命令文件 ASP.PRG,该命令文件用来查询各部门的分年度的“部门编号“、“部门名称“、“年度“、“全年销售额“、“全年利润“和“利润率“(全年利润全年销售额),查询结果先按“年度“升序、再按“利润率“降序排序,并存储到 Li 表中。 注意,程序在第 5 行、第 6 行、第 8 行和第 9 行有错误,请直接在错误处修改。修改时,不可改变 SQL 语句的结构和短语的顺序,不允许增加或合并行。(分数:-1.00)_3.综合应用题(1 小
3、题,计 30 分) 在考生文件夹下有学生管理数据库 books,数据库中有 score 表(学号、物理、高数、英语和学分查询表结构),其中前 4 项已有数据。 请编写符合下列要求的程序并运行程序: 设计一个名为 myform 的表单,表单中有两个命令按钮,按钮的名称分别为 cmdyes 和 cmdno,标题分别为“计算“和“关闭“。程序运行时,单击“计算“按钮应完成下列操作: 1)计算每一个学生的总学分并存入对应的学分字段。学分的计算方法是:物理 60 分以上 (包括 60 分)2 学分,否则 0 分;高数 60分以上(包括 60 分)3 学分,否则 0 分;英语 60 分以上(包括 60 分
4、)4 学分,否则 0 分。 2)根据上面的计算结果,生成一个新的表 xf(要求表结构的字段类型与 score 表对应字段的类型一致),并且按学分升序排序,如果学分相等,则按学号降序排序。单击“退出“菜单项,程序终止运行。 (分数:-1.00)_计算机二级(VF)上机考试 16 答案解析(总分:-3.00,做题时间:90 分钟)1.基本操作题(共 4 小题,第 1 和 2 题是 7 分、第 3 和 4 题是 8 分) (1)建立项目文件,文件名为my。 (2)将数据库 stu 添加到新建立的项目当中。 (3)从数据库 stu 中永久性地删除数据库表“学生“,并将其从磁盘上删除。 (4)修改表单
5、wen,将其 name 属性值改为 my。(分数:-1.00)_正确答案:((1)启动 Visual FoxPro 后,在命令窗口输入命令:CREATE PROJECT my,新建一个项目管理器。 (2)在项目管理器 my 中,首先在“数据“选项卡中选择“数据库“,然后单击选项卡右边的“添加“命令按钮,在系统弹出的“打开“对话框中,将考生文件夹中的数据库 stu 添加到项目管理器中,单击“确定“按钮。 (3)在项目管理器中,选中 stu 数据库,单击右边的“修改“命令按钮,在 stu 数据库设计器中,右击“学生“数据表文件,选择“删除“快捷菜单命令,系统弹出一个对话框,在对话框中单击“删除“命
6、令按钮,将“学生“表从数据库中永久删除。 (4)在命令窗口中输入 MODIFY FORM wen,打开表单设计器,在其属性窗口中将表单的 Name 属性值改为 my,单击工具栏中的“保存“按钮,保存表单修改。)解析:本大题主要考查的是通过项目管理器来完成一些数据库及数据库表的操作,项目的建立可以直接在命令窗口输入命令来实现,数据库添加可以通过项目管理器中的命令按钮,打开相应的设计器直接管理,数据库表的移去,应在数据库设计器中完成。此外,还考查了表单的属性的更改。 2.简单应用题(共 2 小题,每题 20 分,计 40 分) (1)使用“一对多表单向导“生成一个名为 sell 的表单。要求从父表
7、 DE 中选择所有字段,从子表 PT 表中选择所有字段,使用“部门号“建立两表之间的关系,样式为“阴影式“;按钮类型为“图片按钮“;排序字段为部门编号(升序);表单标题为“数据维护“。 (2)在考生文件夹下打开命令文件 ASP.PRG,该命令文件用来查询各部门的分年度的“部门编号“、“部门名称“、“年度“、“全年销售额“、“全年利润“和“利润率“(全年利润全年销售额),查询结果先按“年度“升序、再按“利润率“降序排序,并存储到 Li 表中。 注意,程序在第 5 行、第 6 行、第 8 行和第 9 行有错误,请直接在错误处修改。修改时,不可改变 SQL 语句的结构和短语的顺序,不允许增加或合并行
8、。(分数:-1.00)_正确答案:((1)启动 Visual FoxPro,在“工具“菜单选择“向导“-“表单“菜单命令,出现“向导选取“对话框,根据题意数据源是多个表,因此选定“一对多表单向导“。单击“确定“。 步骤一:在弹出的对话框中“数据库和表“选项选择父表 DE,并把全部的“可用字段“选为“选定字段“。 步骤二:选择子表 PT,并把全部的“可用字段“选为“选定字段“。 步骤三:系统自动以“部门编号“建立两表之间的关系。 步骤四:表单样式选择为“阴影式“,按钮类型选择“图片按钮“。 步骤五:在“排序次序“中选择“部门编号“,并选择升序排序。 步骤六:把表单标题改为“数据维护“,可以在单击
9、“完成“之前单击“预览“按钮来预览生成的表单,最后单击“完成“按钮。 将表单以文件名为 sell 保存在考生文件夹里。表单运行结果如图所示, )解析:本大题 1 小题考查的是依据表单向导生成联系多表的表单内容,利用向导时应注意父表和子表的选择;2 小题中考查的是 SQL 语句的应用,注意 ORDER BY 和 GROUP BY 之间的差别。 3.综合应用题(1 小题,计 30 分) 在考生文件夹下有学生管理数据库 books,数据库中有 score 表(学号、物理、高数、英语和学分查询表结构),其中前 4 项已有数据。 请编写符合下列要求的程序并运行程序: 设计一个名为 myform 的表单,
10、表单中有两个命令按钮,按钮的名称分别为 cmdyes 和 cmdno,标题分别为“计算“和“关闭“。程序运行时,单击“计算“按钮应完成下列操作: 1)计算每一个学生的总学分并存入对应的学分字段。学分的计算方法是:物理 60 分以上 (包括 60 分)2 学分,否则 0 分;高数 60分以上(包括 60 分)3 学分,否则 0 分;英语 60 分以上(包括 60 分)4 学分,否则 0 分。 2)根据上面的计算结果,生成一个新的表 xf(要求表结构的字段类型与 score 表对应字段的类型一致),并且按学分升序排序,如果学分相等,则按学号降序排序。单击“退出“菜单项,程序终止运行。 (分数:-1
11、.00)_正确答案:(在命令窗口输入命令:CREATE FORM myform,打开表单设计器;单击表单控件工具栏上的“命令按钮“控件图标,向表单添加两个命令按钮,选中第一个命令按钮(command1),在属性对话框中将命令按钮的 Name 属性值修改为“cmdyes“,将 Caption 属性值修改为“计算“,如图 7-4 所示。以同样的方法,将第二个命令按钮(command2)的 Name 属性值修改为“cmdno“,将 Caption 属性值修改为“关闭“。 8 双击命令按钮 cmdyes(计算),在 Click 事件代码中编写如下程序段: *“计算“命令按钮的 Click事件代码* S
12、ET TALK OFF USE score REPLACE ALL 学分 WITH 0 GO TOP DO WHILE .NOT. EOF() IF 物理=60 THEN REPLACE 学分 WITH 学分+2 ENDIF IF 高数=60 THEN REPLACE 学分 WITH 学分+3 ENDIF IF 英语=60 THEN REPLACE 学分 WITH 学分+4 ENDIF SKIP ENDDO SORT ON 学分,学号/d TO xf SET TALK ON * 双击命令按钮 cmdno(关闭),在Click 事件代码中编写如下程序段: *“关闭“命令按钮的 Click 事件代码* ThisForm.Release * 保存表单,在命令窗口输入命令:DO FORM myform。在运行的表单界面中单击“计算“命令按钮,系统将计算结果自动保存到新表 xf 中。 )解析:本大题考查的主要是通过对表单控件编写事件代码,来完成数据的查询操作,一般来说命令按钮的单击事件代码是存放在 Click 事件中,控件属性修改可以在属性对话框中完成,对于程序设计部分,可以通过 Do WhileEnddo 循环来依次判断数据表中的每条记录,然后通过条件语句进行分类统计。