四川二年级vfp上机题答案完整版
- 格式:docx
- 大小:559.89 KB
- 文档页数:8
第1套考试盘中已建立项目23test3. PJX,在该项目中已有自由表“医生.DBF”、“药品.DBF”、“处方.DBF”、“STUD1.DBF”和“成绩.DBF”。
下面的程序设计与表单设计都应在项目中完成。
编写程序(文件名:abc3.PRG)(50分)项目23test3.PJX中的数据文件“医生.DBF”、“药品.DBF”、“处方.DBF”数据如下图所示:编程实现:利用磁盘上给定的数据表,实现查查询包括“维生素”类的药品,显示:药品号,药品名称,单价,数量,姓名,职称,部门等信息。
查询结果格式如下:==========================查询结果==========================药品号职工号药品名称单价数量姓名职称部门101 A10003 维生素A 2.0 2 王涛副主任医师外科102 A10004 复合维生素B 3.0 1 张限副主任医师眼科104 A10005 维生素D 5.0 4 苏晓庆隹院医师口腔科105 A10002 维生素E 12.0 2 郭小英主任医师妇产科===========================================================表单设计(文件名:表单3.SCX)(50分)用磁盘上已有的数据表“STUD1.DBF”和“成绩.DBF”,建立一张学生选课查询的表单,界面如下所示:设计要求:通过上部stud1表格中的学号选择,下部的成绩表格中将显示该学生选课情况。
标签控件说明表单的功能。
按结实按钮退出表单的运行。
答案**参考程序abc1.prg **SET SAFE OFFSELE 1USE 处方SELE 2USE 医生INDEX ON 职工号 TAG ZGHSELE 3USE 药品INDEX ON 药品号 TAG YPSELE 1SET RELA TO 职工号 INTO BSET RELA TO 药品号 INTO C ADDILOCA FOR 职工号=B.职工号 AND 药品号=C.药品号 AND "维生素" $ C.药品名称? "=============================查询结果==================================" ?"药品号职工号药品名称单价数量姓名职称部门"DO WHILE NOT EOF()?药品号,职工号,C.药品名称,C.单价,数量,B.姓名,B.职称,B.部门CONTENDDO?"=======================================================================" CLOSE ALLSET SAFE ONRETU二、表单设计(表单1.SCX) (50分)1. 新建表单,正确设置数据环境:STUD1与成绩两表正确关联。
VFP习题(红色部分为答案,不过答案不是百分百准确)第一周(1)如下不正确的数值型常量是( )。
[多选题,答案不够或超出时,此题按零分计!](A)π(B)E-6(C)1E-6(D)1/2(E)30% ABDE(2)在Visual FoxPro中,合法的字符串是()。
[多选题,答案不够或超出时,此题按零分计!](A){ [计算机水平测试] }(B)[ (计算机水平测试) ](C)" '计算机水平测试’'(D)" '计算机水平测试] "(E)" "计算机水平测试" " BD(3)日期时间型常量又称为T型常量,如下错误的形式是( )。
[多选题,答案不够或超出时,此题按零分计!](A){2008-03-03,10.45p}(B){^2008-03-03;10:45p}(C){^2008-03-03,13:45p}(D){^2008-03-03,13:45a}(E){^2008-03-03-10:45p} ACDE(4)如下正确的逻辑常量是()。
[多选题,答案不够或超出时,此题按零分计!](A),T,(B).真.(C).F.(D).f.(E).y.(F).n. CDEF(5)如下选项()是正确的内存变量名。
[多选题,答案不够或超出时,此题按零分计!](A)ABCDE(B)_A A(C)不是变量(D)非变量(E)A变量(F)_ASD ACDEF(6)如下选项()是正确的赋值命令。
[多选题,答案不够或超出时,此题按零分计!](A)STOR 2 TO AA,SS(B)STOR 2,3 TO AA,SS(C)DD=.F.(D)DD=.真.(E)FF=[广东医](F)FF=3+4 ACEF(7)对于赋值命令:X='',如下与此命令等价的有( )。
[注意空字符串与一个空格符组成的非空字符串。
][多选题,答案不够或超出时,此题按零分计!](A)STOR [] TO X(B)STOR "" TO X(C)STOR ' ' TO X(D)X=[](E)STOR " " TO X ABD(8)常见表达式有四种,如下选项()是错误的。
计算机二级《VFP》上机操作试题及答案计算机二级《VFP》上机操作试题及答案一、基本操作题(共18分)在考生文件夹下完成下列操作:(1)新建“点歌”数据库,将考生文件夹下的所有自由表添加到该数据库中。
(2)新建一个项目“点歌系统”,将“点歌”数据库添加进该项目。
(3)为“歌曲”表创建一个主索引,索引名为PK,索引表达式为“歌曲id”;再创建一个普通索引,索引名和索引表达式均为“演唱者”,以上索引都为升序。
(4)为“歌手,,表创建一个主索引,索引名和索引表达式都为“歌手id”,升序。
为“歌曲”和“歌手”表创建永久联系,并设置参照完整性约束:更新规则为“级联”,其他默认。
二、简单应用题(共24分)在考生文件夹下完成下列操作:(1)在考生文件夹下利用查询设计器创建一个查询,从表中查询演唱“粤语”歌曲的歌手。
查询结果包含歌手的姓名、语言和点歌码三个字段;各记录按“点歌码”降序排序,点歌码相同的再按“演唱者”升序排序;查询去向为表ta。
最后将查询保存在qa.qpr文件中,并运行该查询。
(2)使用一对多报表向导建立报表,要求父表为“歌手”,子表为“歌曲”。
从父表中选择字段“姓名”和“地区”,从子表中选择字段“歌曲名称”和“点歌码”,两个表通过“歌手id”和“演唱者”建立联系,按“姓名”升序排序,其他默认,生成的报表名为“歌手报表”。
三、综合应用题(共18分)在考生文件夹下完成下列操作:为了查询不同歌手演唱的歌曲,请设计一个表单mform.scx,其界面如下图所示:表单控件名为formone表单的标题为“歌曲查询”。
表单左侧有一个标签控件Labelone,显示内容为“输入歌手姓名”,一个文本框控件Textone用于输入歌手姓名, 个命令按钮Commanda和Commandb分别显示“查询”和“退出”,以及一个表格控件Gridone。
表单运行时,用户首先在文本框中输入歌手“刘德华”,然后单击“查询”按钮,如果输入正确,在表单右侧以表格形式显示此歌手的演唱的歌曲信息,包括歌曲名称、语言和歌,按点歌码升序排序,并将此信息存入tb.dbf文件中。
1 VFP上机实践习题及答案一、选择题:1. 在关系理论中,把能够唯一地确定一个元组的属性或属性组合称之为A) 索引码B) 关键字C) 域D) 外码2. 运行V isual Foxpro 6.0,错误的方法是A) 双击V isual Foxpro 6.0 图标B) 单击V isual Foxpro 6.0 图标回车C) 右击V isual Foxpro 6.0 图标,并单击其快捷菜单中的"打开"命令D) 拖动V isual Foxpro 6.0 图标到一个新位置3. 学生性别的取值只能为"男","女",这个范围在关系模型中被称为A) 域B) 码C) 分量D) 集合4. V isual Foxpro 6.0 的系统配置文件是A) config.sys B) config.fpw C) win.ini D) autoexec.bat5. 启动V isual Foxpro6.0 屏幕上出现两个窗口:一个是V isual Foxpro 6.0 的主窗口,另一个是A) 文本B) 命令C) 帮助D) 对话框6. 在V isual Foxpro 6.0 中,可以在同类数据之间进行减运算的数据类型是A) 数值型,字符型,逻辑型B) 数值型,字符型,日期型C) 数值型,日期型,逻辑型D) 字符型,日期型,逻辑型7. 下列表达式中不符合V isual Foxpro 6.0 语法要求的是A) 04/05/99 B) T+t C) 1234 D) 2X>158. 在以下四组中,每组有两个分别运算的函数,运算结果相同的是A) LEFT("FoxBASE",3)与SUBSTR("FoxBASE",1,3)B) YEAR(DA TE())与SUBSTR(DTOC(DA TE()),7,2)C) TYPE("36-5*4")与TYPE(36-5*4)D) 假定A= "this ", B= "is a string",A-B与A+B9. 学生数据库的性别字段为逻辑型,男为逻辑真,女为逻辑假。
计算机二级VF上机题库及答案1. 建立菜单QUERYMENU。
该菜单只有"查询"和"退出"两个主菜单项(条形菜单), 其中单击菜单项"退出"时,返回到VFP系统菜单(相应命令写在命令框中,不要写在过程中)。
2. 将COURSE表的"开课系部"字段名改为"开课单位",其余不变。
3. 从数据库SCOREMANAGER中移去表TEMP2.DBF(不是删除)。
4. 将SCORE1表中记录按学号从低到高排序,在学号相同的情况下再按成绩从高到低排序,排序结果存入表NEWORDER。
此题主要考核点:菜单的建立、字段改名、数据库表的逻辑删除、表的排序及查询去向等知识点此题解题思路:第1题:此题的主要考核点是菜单的建立。
新建菜单可按以下步骤:选择"文件"菜单中的"新建"命令,在"新建"对话框中选择"菜单",单击"新建文件"按钮。
在"新建菜单"对话框中选择"菜单"按钮,调出"菜单设计器"。
也可用CREATE MENU命令直接调出菜单设计器。
在菜单名称中填入"查询"、"退出","退出"结果为命令"SET SYSMENU TO DEFAULT"。
第2题:此题的主要考核点是字段的改名。
翻开COURSE表表设计器,将光标移动到"开课系部"字段格中,将其改为"开课单位"。
第3题:此题的主要考核点是数据库表的逻辑删除。
翻开考生文件夹下的" SCOREMANAGER "数据库,在" SCOREMANAGER "数据库设计器中,选中"TEMP2"表,点击主菜单"数据库"下的"移去",在弹出的对话框中点击"移去"按钮,在随后弹出的对话框中点击"是"按钮,至此便完成了"从数据库"SCOREMANAGER"中移去表TEMP2(不是删除)"的操作。
Visual Foxpro 上机考试题(参考答案)第一套一、(40分)评分标准如下:(1)正确建立2个表的数据结构(表结构设计正确)10分(2)数据正确10分(3)数据库正确5分,索引正确10分,永久关联正确5分二、(注意:只有界面正确不给分)(1)(10分)参考答案:将stu.dbf的姓名字段与组合框combo1绑定;组合框combo1的Interactivechange的事件代码:xm=alltrim(bo1.value)thisform.grid1.RECORDSOURCEtype=4thisform.grid1.RECORDSOURCE="select 学号,课程名,成绩 from score where 学号 in ; (select 学号 from stu where 姓名=xm) into cursor temp"(2)(10分)参考答案:将stu.dbf的电话字段与组合框combo1绑定;组合框combo1的Interactivechange的事件代码:dh=bo1.valuethisform.text1.value=left(dh,3)thisform.grid1.recordsourcetype=4thisform.grid1.recordsource="select 学号,姓名,寝室,电话 from stu where left(电话,3)=thisform.text1.value into cursor temp"(3)(10分)参考答案:将stu.dbf的学号和姓名字段与列表框List1绑定;列表框List1的Interactivechange的事件代码:xh=thisform.list1.valueselect sum(成绩),count(*) from score where 学号=xh into array cjthisform.text1.value=cj(1)thisform.text2.value=cj(2)三、(30分)参考答案:界面设计(5分)“输出”按钮的click事件:x=thisform.text1.valueif x=-1thisform.releaseendifif x%8<>0 (或 mod(x,8)#0 )bel2.caption=alltrim(str(x))+" 不是8的倍数!"elsebel2.caption= alltrim(str(x))+"是8的倍数!"endif第二套一、(40分)评分标准如下:(1)正确建立2个表的数据结构(表结构设计正确)10分(2)数据正确10分(3)数据库正确5分,索引正确10分,永久关联正确5分二、(注意:只有界面正确不给分)(1)(10分)参考答案:在组合框中通过手工输入的方式绑定数据;组合框combo1的Interactivechange 的事件代码:use salescan for 销售季度=bo1.valuethisform.edit1.value=thisform.edit1.value+客户代表+chr(13)endscanthisform.refreshuse(2)(10分)参考答案:将products.dbf 添加到表单的数据环境中,并将products.dbf 的商品编号与组合框combo1绑定;组合框combo1的Interactivechange 的事件代码:locate for 商品编号=bo1.valuebel1.caption="热销商品名称:"+ 热销商品名称thisform.text1.value=规格thisform.text2.value=单价thisform.refresh(3)(10分)参考答案:“显示”按钮的click 事件代码:thisform.grid1.recordsourcetype=4thisform.grid1.recordsource="select 热销商品名称 as 商品名称,sum(销售数量*单价) as 总销售金额 from products,sale where products.商品编号=sale.商品编号 group by products.商品编号 into cursor temp"三、(30分)参考答案:界面设计(5分)文本框text3的gotfocus 事件代码:x=val(thisform.text1.text)y=val(thisform.text2.text)do casecase thisform.optiongroup1.value=1z=x+ycase thisform.optiongroup1.value=2z=x/ycase thisform.optiongroup1.value=3z=x**ycase thisform.optiongroup1.value=4z=x%yendcasethis.value=round(z,1) (5分)第三套 一、(40分)评分标准如下:(1)正确建立2个表的数据结构(表结构设计正确)10分(2)数据正确10分(3)数据库正确5分,索引正确10分,永久关联正确5分二、(注意:只有界面正确不给分)(1)(10分)参考答案:“计算并显示”按钮的click事件:update zggz set 实发工资=基本工资+奖金-扣款thisform.grid1.recordsourcetype=4thisform.grid1.recordsource="select 职工号,基本工资,实发工资from zggz intocursor temp"(2)(10分)参考答案:“显示”按钮的click事件:thisform.grid1.recordsourcetype=4thisform.grid1.recordsource="select top 3 姓名,实发工资,部门 from zgxx,zggz wherezgxx.职工号=zggz.职工号 order by 实发工资 desc into cursor temp"(3)(10分)参考答案:在组合框中通过手工输入的方式绑定数据;组合框combo1的Interactivechange的事件代码:thisform.edit1.value=""use zgxxscan for 职称=bo1.valuethisform.edit1.value=thisform.edit1.value+职工号+" "+ 姓名endscanthisform.refreshuse三、(30分)参考答案:界面设计(5分)自定义方法程序newpara na=1for i=1 to n Array a=a*iendforreturn a“计算”命令按钮的click事件:s1=thisform.new(thisform.text1.value)s2=thisform.new(thisform.text2.value)s3=thisform.new(thisform.text2.value-thisform.text1.value)p=(s1+s2)/(s2*s3)thisform.text3.value=round(p,2)。
经典模板编程题目模板一:考试磁盘中已建立项目20,在该项目中已有自由表“学生.DBF”、“成绩.DBF”、“课程.DBF”。
编写程序(文件名:ABC1.PRG),利用磁盘上已有的数据表“学生”、“成绩”、“课程”,实现如下功能:输入“课程号”,查询相关课程的学生姓名、课程名、成绩、班级和任课老师的基本信息。
请输入课程号:D02——————————————查询结果————————————————姓名课程名成绩班级任课教师张刚高等数学 90 2000级数学杨小勇曾诚高等数学 66 2000级数学杨小勇代非高等数学 67 2000级数学杨小勇继续查找吗?Y/N模板二:考试磁盘中已建立项目19text1,在该项目中已有自由表“进货.DBF”和“库存量.DBF”。
编写程序(文件名:abc1.PRG)编程实现:按使用者输入的货物编号进行查询,显示货物编号,货物单价,货物名称和库存数量。
显示结果如下:请输入查询编号:BG—990927********查询结果********货物编号货物单价货物名称库存数量BG—990927 1000 办公用品 4************************继续查询吗?y/n模板三:考试磁盘中已建立项目25text2,在该项目中已有数据表“ST.DBF”和“KC.DBF”。
编写程序(文件名:abc2.PPG)编程实现:1、求总分与平均2、按平均求个分数段的人数(90—100,60—90,60分以下)显示结果如下90——100分人数:160——90 分人数:660分以下人数: 2模板四:表单设计题利用磁盘上已有的数据表“RS.DBF”,建立一张删除记录表单(form1),界面显示如下所示。
要求:1)用文本框显示“人事数据表中记录的逻辑删除”,该控件在运行时不能输入新的文本内容。
2)将表中所有的字段按上图添加到表单中3)添加一个命令组控件,其中包括三个命令按钮:“上一条”,“下一条”,“逻辑删除”。
计算机二级《VFP》上机考题与答案xx1.执行如下命令的输出结果是( )。
?15%4,15%-4A.3 -1B.3 3C.1 1D.1 -12.在Visual FoxPr0中,如果希望跳出SCAN…ENDSCAN循环语句、执行ENDSCAN后面的语句,应使用( )。
A.LOOP语句B.EXIT语句C.BREAK语句D.RETURN语句3.假设新建了一个程序文件myProc.prg(不存在同名的.exe、.app和.fxp文件),然后在命令窗口输入命令DO myProc,执行该程序并获得正常的结果。
现在用命令ERASE myProc.prg删除该程序文件,然后再次执行命令DO myProc,产生的结果是( )。
A.出错(找不到文件)B.与第一次执行的结果相同C.系统翻开“运行”对话框,要求指定文件D.以上说法都不对4.在Visual FoxPro中,使用LOCATE FOR命令按条件查找记录,当查找到满足条件的第一条记录后,如果还需要查找下一条满足条件的记录,应该( )。
A.再次使用LOCATE命令重新查询B.使用SKIP命令C.使用CONTINUE命令D.使用G0命令5.在Visual FoxPr0中,假设student表中有40条记录,执行下面的命令后,屏幕显示的结果是( )。
?RECCOUNT( )A.0B.1C.40D.出错6.恢复系统默认菜单的命令是( )。
A.SET MENU TO DEFAULTB.SET SYSMENU TO DEFAULTC.SET SYSTEM MENU TO DEFAULTD.SET SYSTEM TO DEFAULT7.下面程序的运行结果是( )。
SETTALK OFFSTORE 0 TO s,iDO WHILE i<20i=i+1IF MOD(i,5)=0s=s+iENDIFENDDO?sA.20B.30C.50D.1608.SQL语言的更新命令的关键词是( )。
计算机二级VisualFoxPro上机考试题库及答案解析29一、根本操作在考生文件夹下完成如下操作:1.建立数据库orders_manage;2.将自由表employee和orders添加到新建的orders_manage数据库中;3.表employee和orders具有一对多联系,为建立两表之间的联系建立必要的索引;4.建立两表之间的联系并设置参照完整性规那么如下:更新规那么为"级联"、删除规那么为"级联"、手稿规那么为"限制"。
二、简单应用在考生文件夹下完成如下简单应用:1.使用SQL语句查询每个职工所经手的具有最高金额的订购单信息〔orders 表〕,并将结果按金额升序存储到表results 中。
2.使用SQL命令建立视图view_b视图中是目前在orders表中没有所签订单的职工〔employee〕信息,记录按仓库号降序排列;同时把所用命令保存在文件文本view_b.txt中。
三、综合应用建立一个表单,表文件名和表单控件名均为myform_b,表单标题为"订单管理",表单其它功能如下:1.表单中含有一个页框控年〔pageFrame1〕和一个"退出"命令按钮〔command1〕,单击"退出"命令按钮关闭并释放表单;2.页框控件〔pageFrame1〕中含有三个页面,每个页面都通过一个表格控件显示有关信息:1〕第一个页面page1上的标题为"职工",其上的表格控件名为grdEmployee,显示表employee中的内容;2〕第二个页面page2上的标题为"订单",其上的表格控件名为grd0rders,显示表orders中的内容;3〕第三个页面page3上的标题为"职工订单金额",其上的表格控件名为Grid1,该表格显示每个职工的职工号、姓名及其所经手的订单总金额〔注:表格只有3列,第1列为"职工号",第2列为"职工号",第2列为"姓名",第3列为"总金额"〕。
计算机二级VisualFoxPro上机考试题库及答案解析12一、根本操作在考生文件夹下完成如下操作:1.创立一个表单,并将表单保存在myform文件中。
2.将myform表单设置为模式表单,并将其标题设置为"表单操作"。
3.将考生目录中的xuesheng表和chengji表依次添加到myform表单的数据环境中,确保两个表对应的对象名称分别为cursor1和cursor2。
4.将考生目录中的xuesheng表和chengji表建立关联关系:当xuesheng 表中的记录指针移动时,chengji表中的记录指针会自动移到学号相同的对应记录上。
二、简单应用在考生文件夹下完成如下简单应用:1.利用查询设计器创立杳询,从xuesheng和chengji表中查询数学、英语和信息技术三门课都在85分以上〔含〕,或者数学、英语都在90分以上〔含〕而信息技术在75分以上〔含〕的学生记录。
查询结果包含学号、姓名、数学、英语和信息技术5个字段;保记录按学号降序排序;查询去向为表table1。
最后将查询保存在query1.qpr文件中,并运行该查询。
2.首先创立数据库cj_m,并向其中添加xuesheng表和chengji表。
然后在数据库中创立视图view1:利用该视图只能查询20221001班〔学号的前8位数字串为班号〕的学生记录;查询结果包含学号、姓名、数学、英语和信息技术5个字段;各记录按学号降序排序。
最后利用刚创立的视图view1查询视图中的全部信息,并将查询结果存放在表table2中。
三、综合应用在考生文件夹下创立一个下拉式菜单mymenu.mnx,并生成菜单程序mymenu.mpr。
运行该菜单程序时会在当前vfp系统菜单的末尾追加一个"考试"子菜单,如以下图所示。
菜单命令"计算"和"返回"的功能都通过执行过程完成。
菜单命令"计算"的功能如下:1〕先用SQL-SELECT语句完成查询:按学号降序列出全部学生在学号、姓名、灵敏学、英语和信息技术5个字段上的数据,查询结果存放在表table3中。
四川二年级v f p上机题答案集团标准化办公室:[VV986T-J682P28-JP266L8-68PNN]**结构化程序设计的步骤打开表并索引(多工作区)建立关联(SET RELATION TO…INTO…)数据处理(修改、查询、统计等)输出显示(, , LIST, DISPLAY)关闭表(CLOSE DATABASES, CLOSE ALL)**表单程序设计的步骤(创建数据库(视图))创建表单添加数据环境添加控件设置控件属性编写事件代码(INIT, CLICK等)**第33次上机考试[33.1.2]①打开表,索引,关联select 2use 学生index on 学号 tag xhselect 1use 成绩set relation to 学号 into b②数据处理(1)—修改将课程为“Access程序设计“的成绩提高15%。
replace all 成绩 with 成绩*1.15 for 课程名="Access程序设计"③数据处理(2)—查询,显示通过输入“学号”查询学生的信息,即:学号、姓名、课程名、成绩、学院等资料。
若没找到,显示“数据表中没有查到此人信息!”。
界面舅图所示:accept "请输入查询的学号:" to xhlocate for 学号=xhif found()"***********查询结果***************""学号姓名课程名成绩学院"do while found()学号, b.姓名, 课程名, 成绩, b.学院continueenddo"***********************************"else"数据表中没有查到此人信息!"endif④关闭表close databases整个程序:abc1.PRGclearset talk offset safety offselect 2use 学生Index on 学号 tag xhselect 1use 成绩set relation to 学号 into breplace all 成绩 with 成绩*1.15 for 课程名="Access程序设计" accept "请输入查询的学号:" to xhlocate for 学号=xhif found()"***********查询结果***************""学号姓名课程名成绩学院"do while found()学号, b.姓名, 课程名, 成绩, b.学院continueenddo"***********************************"else"数据表中没有查到此人信息!"endifclose databases[33.1.3]表单设计(文件名:form1.SCX)①创建表单,添加控件、数据环境②设置控件属性thisform.Optiongroup1属性值thisform.Optiongroup1.Value 0thisform.Optiongroup1.ButtonCount 2thisform.Optiongroup1.Option1.Caption "男"thisform.Optiongroup1.Option2.Caption "女"mand1属性值mand1.Caption "结束"thisform.Grid1属性值thisform.Grid1.Visible .F.③编写事件代码thisform.Optiongroup1.Click事件xb=""do casecase this.value=1xb="男"case this.value=2xb="女"endcaseSELECT * FROM 学生;WHERE 学生.性别 = xb;INTO CURSOR tmpthisform.Grid1.Recordsource="tmp"thisform.Grid1.Visible=.T.mand1.Click事件thisform.Release[33.1.3]表单设计(文件名:form1.SCX)①创建表单,添加控件、数据环境②设置控件属性thisform.Optiongroup1属性值thisform.Optiongroup1.Value 0thisform.Optiongroup1.ButtonCount 2 thisform.Optiongroup1.Option1.Caption "男" thisform.Optiongroup1.Option2.Caption "女" mand1属性值mand1.Caption "结束" thisform.grd学生属性值thisform.grd学生.Visible .F.thisform.grd学生.Recordsource "学生"③编写事件代码thisform.Optiongroup1.Click事件do casecase this.value=1set filter to 性别="男"case this.value=2set filter to 性别="女"endcasethisform.grd学生.Visible=.T.thisform.refreshmand1.Click事件thisform.Release[33.2.2]编写程序(文件名:abc2.PRG)父表:1号区子表:2号区打开表,索引,关联select 2use kshindex on 学号 tag xhselect 1use yyuset relation to 学号 into b数据处理(1)—修改计算并填写“yyu.dbf”的平均;replace all 平均分 with (笔试听力)/2数据处理(2)—修改,显示填写ksh.dbf中的“评语”字段值。
其中:当平均分>=90,评语为“优”;当平均分>=80,评语为“良”;当平均分>=70,评语为“中”。
查询输入格式如下:go topdo while !eof()do casecase 平均分>=90replace b.评语 with "优"case 平均分>=80replace b.评语 with "良"case 平均分>=70replace b.评语 with "中"endcaseskipenddobrowse fields 学号, b.姓名, 笔试, 听力, 平均分, b.评语关闭表close databases程序:abc2.PRGclearset talk offset safety offselect 2use kshindex on 学号 tag xhselect 1use yyuset relation to 学号 into breplace all 平均分 with (笔试听力)/2go topdo while !eof()do casecase 平均分>=90replace b.评语 with "优"case 平均分>=80replace b.评语 with "良"case 平均分>=70replace b.评语 with "中"endcaseskipenddobrowse fields 学号, b.姓名, 笔试, 听力, 平均分, b.评语close databases[33.2.3]表单设计(文件名:form2.SCX)创建表单,添加控件、数据环境设置控件属性thisform属性值thisform.Caption "英语成绩"thisform.Pageframe1属性值thisform.Pageframe1.PageCount 2thisform.Pageframe1.Page1.Caption "成绩"thisform.Pageframe1.Page2.Caption "综合"mand1属性值mand1.Caption "退出"thisform.Pageframe1.Page2子控件属性thisform.Pageframe1.Page2.lbl学号.Caption "学号"thisform.Pageframe1.Page2.lbl平均分.Caption "平均分"thisform.Pageframe1.Page2.lbl评语.Caption "评语"thisform.Pageframe1.Page2.txt学号.ControlSource "yyu.学号" thisform.Pageframe1.Page2.txt平均分.ControlSource "yyu.平均分" thisform.Pageframe1.Page2.txt评语.ControlSource "ksh.评语" mandgroup1.ButtonCount 3mand1.Caption "上一条" mand2.Caption mand3.Caption编写事件代码thisform.Init事件SELECT Yyu.学号, Ksh.姓名, Yyu.笔试, Yyu.听力;FROM yyu INNER JOIN ksh;ON Yyu.学号 = Ksh.学号;INTO CURSOR tmpthisform.Pageframe1.Page1.Grid1.Recordsource="tmp"select yyumand1.Click事件thisform.Releasemandgroup1.Click事件do casecase this.value=1if !bof()skip -1endifcase this.value=2if !eof()skipendifcase this.value=3thisform.Releaseendcasethisform.Refresh[33.2.3]表单设计(文件名:form2.SCX)创建数据库、视图创建表单,添加控件、数据环境设置控件属性thisform属性值thisform.Caption "英语成绩"thisform.Pageframe1属性值thisform.Pageframe1.PageCount 2thisform.Pageframe1.Page1.Caption "成绩"thisform.Pageframe1.Page2.Caption "综合"mand1属性值mand1.Caption "退出"thisform.Pageframe1.Page1子控件属性值thisform.Pageframe1.Page1.grd视图1.Recordsource "视图1" thisform.Pageframe1.Page2子控件属性值thisform.Pageframe1.Page2.lbl学号.Caption "学号"thisform.Pageframe1.Page2.lbl平均分.Caption "平均分"thisform.Pageframe1.Page2.lbl评语.Caption "评语"thisform.Pageframe1.Page2.txt学号.ControlSource "yyu.学号" thisform.Pageframe1.Page2.txt平均分.ControlSource "yyu.平均分" thisform.Pageframe1.Page2.txt评语.ControlSource "ksh.评语" mandgroup1.ButtonCount 3mand1.Caption "上一条" mand2.Caption "下一条" mand3.Caption "结束" 编写事件代码thisform.Init事件select yyumand1.Click事件thisform.Releasemandgroup1.Click事件do casecase this.value=1if !bof()skip -1endifcase this.value=2if !eof()skipendifcase this.value=3thisform.Releaseendcasethisform.Refresh[33.3.2]编写程序(文件名:abc3.PRG)。