国家二级VF机试模拟试卷186 (题后含答案及解析)
题型有:1. 基本操作题 2. 简单应用题 3. 综合应用题
基本操作题(30分)
1. (1)根据sc数据库,使用查询向导建立一个包含学生“姓名”和“出生日期”的标准查询birthday.qpr。 (2)从sc数据库中删除视图stu new。 (3)用SQL命令向 score 表插入一条记录:学号为“08102002”,课程号为“1001”,成绩为91,并将命令保存在考生文件夹one.txt中。 (4)打开表单close,向其中添加一个标题为“退出”的命令按钮,名称为command1,单击“退出”按钮则关闭表单。
正确答案:(1)①在命令窗口执行命令:OPEN DATABASE SC,打开数据库环境。 ②执行【文件】→【新建】菜单命令,在弹出的“新建”对话框中选中“查询”选项,然后单击“向导”图标按钮,系统弹出“向导选取”对话框,选中“查询向导”项,单击“确定”按钮,启动查询向导。 ③在查询向导的“步骤1-字段选取”界面的“数据库和表”下选中“student”表,双击“可用字段”中的“姓名”和“出生日期”字段,将其添加到“选定字段”中。 ④由于本题不再要求涉及其他操作,可单击“完成”命令按钮直接跳至向导最后一个界面“步骤5-完成”,继续单击“完成”按钮,在弹出的“另存为”对话框的“文件名”框中输入查询文件名birthday,单击“保存”按钮。 (2)①在命令窗口执行命令:MODIFY DATABASE sc,打开数据库设计器。 ②右击数据库设计器中的stu_new视图文件,选择【删除】快捷菜单命令,在弹出的Visual FoxPro 对话框中单击“移去”按钮,将stu_new视图移出数据库。 (3)①在命令窗口执行命令:MODIFY FILE one,打开文本文件编辑器。 ②在编辑器中输入SQL查询代码:INSERT INTOSCORE VALUES (“08102002”,”1001”,91)。 ③在命令窗口执行命令:DO one.txt,执行文本文件。 (4)①在命令窗口执行命令:MODIFY FORM close,打开表单设计器修改表单。 ②从“表单控件”工具栏中向表单添加一个命令按钮控件。选中命令按钮,在“属性”面板中修改按钮的Caption属性值“退出”。 ③双击“退出”命令按钮,编写Click事件代码:THISFORM.RELEASE。 ④单击“常用”工具栏中的“运行”按钮查看结果,将表单文件保存到考生文件夹下。
解析:本题考查了查询向导的使用;视图的删除;SQL数据探作语句和表单常用控件的操作。 视图删除可以在数据库设计器中进行,也可以直接通过命令删除,SQL插入语句功能属于SQL的数据操作功能,通过INSERT完成。 查询向导和表单的操作也都属于比较简单的操作,修改表单及控件属性值一般是在“属性”面板中进行,如果当前没有打开“属性”面板,可以右击表单选择【属性】快捷菜单命令打开。
简单应用题(40分)
2. (1)考生文件夹下的程序文件five.prg的功能是:根据“教师表”计算
每个系的教师人数并将相应数据填入“学院表”,程序中有3处错误,请修改并执行程序。只能修改标有错误的语句行,不能修改其他语句。 (2)在“课程管理”数据库中使用视图设计器建立视图teacher view,该视图根据“教师表”和“课程表”建立,视图包括“姓名”、“工资”、“课程名”和“学时”4个字段,视图中的记录按“工资”升序排列。
正确答案:(1)步骤1:在命令窗口执行命令:MODIFY COMMAND five,打开程序文件,文件中的命令代码如下: &&根据”教师表”计算每个系的教师人数并将数据填入”学院表” CLOSE DATA USE 学院表 GO TOP DO.NOT.EOF( ) &&错误 xihao=系号 SELECT COUNT(*)FROM 教师表 WHERE教师表.系号=xihao INTO A &&错误 REPLACE 教师人数 WITH A[1] NEXT &&错误ENDDO修改程序中的错误行,修改后的程序如下: &&根据”教师表”计算每个系的教师人数并将数据填入”学院表”CLOSE DATAUSE 学院表GO TOPDO WHILE.NOT.EOF( ) &&错误 xihao=系号 SELECT COUNT(*) FROM 教师表 WHERE教师表.系号=xihao INTO ARRAY A &&错误 REPLACE教师人数WITH A[1] SKIP &&错误ENDDO 步骤2:保存文件修改,在命令窗口执行命令:DO five,执行程序文件。 (2)步骤1:在命令窗口执行命令:MODIFY DATABASE课程管理,打开数据库设计器。 步骤2:在数据库设计器中右击鼠标,选择【新建本地视图】快捷菜单命令打开视图设计器,接着在弹出的“新建本地视图”对话框中单击“新建视图”图标按钮,然后在“添加表或视图”对话框中依次双击“教师表”和“课程表”,将表添加到视图设计器中。 步骤3:在视图设计器中依次双击“教师表”中“姓名”、“工资”字段和“课程表”中的“课程名”、“学时”字段添加到“选定字段”中。 步骤4:在“排序依据”选项卡中双击“选定字段”列表框中的“教师表.工资”字段,将字段添加到“排序条件”列表框中。 步骤5:单击“常用”工具栏中的“运行”按钮查看结果,将视图文件以文件名teacher_view保存。
解析:(1)本题考查了DO WHILE循环语句;SQL简单的计算查询;Visual FoxPro修改表记录语句,程序的功能大致如下: 首先打开“学院表”,将记录指针指向表文件首,然后开始执行DO WHILE循环处理表中记录。DO WHILE语句的循环条件是当记录指针没有到达“学院表”末尾时,执行循环体中的语句。 循环体功能:先设置一个变量等于“学院表”当前记录的“系号”字段值;然后通过SQL计算查询“教师表”中“系号”字段值等于该变量值的教师人数,将结果保存到数组中,其中,可以通过COUNT( )函数计算得到教师人数;接着利用REPLACE语句修改“学院表”当前记录的“教师人数”字段的值,该值等于SQL计算查询输出到数组的值;最后,将记录指针指向“学院表”的下一条记录,返回到DO WHILE处再继续判断记录指针是否指向文件末尾,直到指针指向表末尾时退出循环,程序结束。 根据对程序语句的分析,可以得知: 第一处错误是DO WHILE语句的格式错误,缺少WHILE短语。 第二处错误是查询输出短语错误,输出到数组中的短语是INTO ARRAY。 第三处错误是循环递增的短语错误,在数据表中,应使用SKIP短语表示指向下一条记录,NEXT短语一般在FOR循环中用得比较多。 (2)本题考查的是视图设计器的使用及报表向导的使用,由于视图只能保存在数据库中,因此要先打开用于保存视图的数据库。本题中视图建立比较简单,注意判断视图中的字段来自哪个表及
排序条件的设置即可。
综合应用题(30分) 3. 设计名为bookbd的表单(控件名为fom1,文件名为bookbd)。标题为“出版社情况统计”。 表单中有一个组合框、一个文本框和两个命令按钮,名称为“统计”和“退出”。运行表单时组合框中有四个条目“北京大学出版社”、“科学经济出版社”、“人民邮电出版社”、“高等教育出版社”可供选择,在组合框中选择出版社名称以后,如果单击“统计”命令按钮,则文本框中显示books表中该出版社图书的总数。单击“退出”按钮则关闭表单。如图1-20所示。
正确答案:步骤1:在命令窗口执行命令:CREATE FORMBOOKBD,打开表单设计器新建表单。 步骤2:右击表单选择【数据环境】快捷菜单命令,继续在表单数据环境中单击右键选择【添加】快捷菜单命令,在“添加表或视图”对话框中单击“其他”按钮,在弹出的“打开”对话框中双击books表,将表添加到数据环境中。 步骤3:从“表单控件”工具栏中依次向表单添加一个组合框、一个文本框和两个命令按钮控件。在“属性”面板的下拉框中选择表单对象。在“全部”选项卡中修改对象属性值,见表2-24。 步骤4:双击组合框(Combo1),编写组合框的。lnit事件代码。代码如下: *****组合框(Combo1)的Init事件代码*****THISFORM.COMBO1.ADDITEM(“北京大学出版社”)THISFORM.COMBO1.ADDITEM(“科学经济出版社”)THISFORM.COMBO1.ADDITEM(“人民邮电出版社”)THISFORM.COMBO1.ADDITEM(“高等教育出版社”) 步骤5:双击命令按钮,编写各个命令按钮的Click事件代码。各按钮代码如下: *****“统计”按钮的Click事件代码(以下SQL查询语句部分由查询设计器生成)*****SELECT COUNT(Books.书名); FROM books; WHERE Books.出版单位=ALLTRIM(THISFORM.COMBO1.DISPLAYVALUE);INTO ARRAY ARR1THISFORM.TEXT1.VALUE=ARR1 *****“退出”按钮的Click事件代码***** THISFORM.RELEASE 步骤6:单击“常用”工具栏中的“运行”按钮查看结果,将表单文件保存到考生文件夹下。
解析:本大题主要考查了表单及控件的常用属性和方法的设置;SQL简单的计算查询。 对本题操作时,首先根据题意新建表单、添加控件并修改相关属性。通过组合框(Combo1)控件的ADDITEM方法可以向组合框中增加条目;另外,通过组合框的DISPLAYVALUE属性可以指定当前显示在组合框中的数据。 SQL查询语句采用的是SQL简单的计算查询,注意本题应使用COUNT( )计数函数对“书名”字段进行统计,另外要注意的是查询条件的设置,应设置为books表中“出版单位”等于组合框中当前显示的内容;最终将查询结果保存在数组中,然后再通过数组将值赋给文本框进行显示。
因篇幅问题不能全部显示,请点此查看更多更全内容