您好,欢迎访问三七文档
当前位置:首页 > 电子/通信 > 数据通信与网络 > 二级VFP上机练习题12
二级VFP上机练习题11、数据库和表的基本操作建立一个计算机考试成绩管理数据库,文件名为CJGL.DBC,并输入数据。该数据库中有两个数据表:学生信息表(XS.DBF)和学生成绩表(CJ.DBF)。其数据形式如下:学生信息表(XS.DBF)学生成绩表(CJ.DBF)考号姓名考号笔试成绩上机成绩成绩合格否07020104李萍0701021386优.F.07040109黄程0703010645缺考.F.07030106王军0704010991优.F.07020132周小丽0702013274及格.F.07050223程成0705022379不及格.F.07010213张伟0702010457及格.F.要求:将数据库(CJGL.DBC)中的XS.DBF(父表)和CJ.DBF(子表)以“考号”建立一对一的永久关系。2、程序设计建立程序文件COM-SQL711.PRG,要求将完成下列各小题任务的VFP数据表操作命令或VFP-SQL命令写在该程序文件中。在程序首行用注释语句注明姓名和准考证号,并用注释语句标注小题号。(1)正确修改每个学生的“成绩合格否”字段,并填入学生成绩表CJ.DBF中。规定笔试成绩60或上机成绩为“缺考”或“不及格”,则该字段值为.F.,否则为.T.;(2)在学生成绩表CJ.DBF中,查询并显示成绩合格学生的考号、姓名、笔试成绩和上机成绩;(3)逻辑删除学生成绩表CJ.DBF中上机考试缺考的学生。3、表单设计按以下要求设计程序界面,表单文件名为FORM711.SCX。设计如图所示的—个表单,包括4个标签,3个文本框,1个命令按钮(各控件的大小、颜色、字体、字号等属性由自定)。其中:(1)表单顶部的标签用来显示学生自己的姓名和考号;(2)文本框text1、text2和text3的显示初值为0:(3)该表单运行后,可以在文本框text1、text2中输入成绩(0~100),左键单击“计算”命令按钮,则在文本框text3中显示平均成绩,要求保留一位小数;(4)双击表单任意空白处,结束表单程序的运行。二级VFP上机练习题1参考答案2.(1)VFP命令:USECJREPLACEALL成绩合格否WITH.T.FOR笔试成绩=60AND(上机成绩=“及格”OR上机成绩=“优”)SQL命令:UPDATECJSET成绩合格否=.T.WHERE笔试成绩=60AND(上机成绩=“及格”OR上机成绩=“优”)(2)VFP命令:SELECT1USEXSINDEXON考号TAGKHSELECT2USECJSETRELATIONTO考号INTOXSLIST考号,XS.姓名,笔试成绩,上机成绩FOR成绩合格否=.T.SQL命令:SELECTXS.考号,姓名,笔试成绩,上机成绩FROMXS,CJWHEREXS.考号=CJ.考号AND成绩合格否=.T.(3)VFP命令:USECJDELETEFOR上机成绩=“缺考”SQL命令:DELETEFROMCJWHERE上机成绩=“缺考”3.主要属性、事件代码:1)text1、text2和text3的value属性值均为02)“计算”按钮的Click事件代码:x1=thisform.text1.valuex2=thisform.text2.valuethisform.text3.value=round((x1+x2)/2,1)3)Form1的DblClick事件代码:thisform.release二级VFP上机练习题21、数据库和表的基本操作建立一个工资管理数据库,文件名为GZGL.DBC,并输入数据。该数据库中有两个数据表:职工数据表(ZGB.DBF)和工资数据表(GZB.DBF)。其数据形式如下:职工数据表ZGB.DBF工资数据表GZB.DBF职工号姓名婚否职称职工号基本工资津贴奖金公积金实发工资020365周尔杰.T.工人020365882.00213.511590020528王怡.T.技术员0205281562.00283.0144140010234李莉.F.技术员0102341306.00223.0115120020458刘长新.T.工程师0204581748.00302.0156160020636郑然.F.工人020636864.00143.09870要求:将数据库GZGL.DBC中的ZGB.DBF(父表)和GZB.DBF(子表)以“职工号”建立一对一的永久关系。2、程序设计建立程序文件COM-SQL712.PRG,要求将完成下列各小题任务的VFP数据表操作命令或VFP-SQL命令写在该程序文件中。在程序首行用注释语句注明学生姓名和准考证号,并请用注释语句标注小题号。(1)计算每个职工的“实发工资”字段,并填入工资数据表GZB.DBF中。其中:实发工资=基本工资+津贴+奖金-公积金;(2)显示未婚职工的职工号、姓名、基本工资和实发工资;(3)计算工资表GZB中所有职工的平均奖金和实发工资总额。3、表单设计按以下要求设计程序界面,表单文件名为FORM712.SCX。设计如图所示的一个表单,包括4个标签、3个文本框、1个命令按钮(各控件的大小、颜色、字体、字号等属性由学生自定)。其中:(1)表单项部的标签用来显示学生自己的姓名和考号;(2)文本框text1、text2和text3的显示初值为0;(3)该表单运行后,可以在文本框text1中输入圆的半径(0),光标移到文本框text2、text3时,可以分别计算圆的面积和圆的周长,要求保留两位小数。(4)左键单击“关闭”按钮,结束表单程序的运行。4、表单设计按以下要求设计程序界面,表单程序文件名为MyForm.SCX。建立一个默认尺寸的表单,包括两个按钮。其功能是:按住“显示”按钮,在标签上显示“新年好”,松开“显示”按钮,则在标签中显示“HappyNewYear”;按住“退出”按钮,则结束表单程序的运行。松开“显示”按钮时按住“显示”按钮时二级VFP上机练习题2参考答案2.(1)VFP命令:USEGZBREPLACEALL实发工资WITH基本工资+津贴+奖金-公积金SQL命令:UPDATEGZBSET实发工资=基本工资+津贴+奖金-公积金(2)VFP命令:SELECT1USEZGBINDEXON职工号TAGZGHSELECT2USEGZBSETRELATIONTO职工号INTOZGBLIST职工号,ZGB.姓名,基本工资,实发工资FORNOTZGB.婚否CLOSEALLSQL命令:SELECTGZB.职工号,姓名,基本工资,实发工资FROMZGB,GZBWHEREZGB.职工号=GZB.职工号ANDNOTZGB.婚否(3)VFP命令:USEGZBCALCULATEAVG(奖金),SUM(实发工资)TOA,B?”平均奖金:”,A,”实发工资总额:”,BSQL命令:SELECTAVG(奖金)AS平均奖金,SUM(实发工资)AS实发工资总额FROMGZB3.主要属性、事件代码:1)text1、text2和text3的value属性值均为02)text2的GotFocus事件代码:x1=thisform.text1.valuethis.value=round(3.14159*x1^2,2)3)text3的GotFocus事件代码:x2=thisform.text1.valuethis.value=round(2*3.14159*x2,2)4)“关闭”按钮的Click事件代码:thisform.release4.[Command1.MouseDownEvent]LPARAMETERSnButton,nShift,nXCoord,nYCoordThisForm.Label1.caption=新年好[Command1.MouseUpEvent]LPARAMETERSnButton,nShift,nXCoord,nYCoordThisForm.Label1.caption=HappyNewYear二级VFP上机练习题31、建立一个产品销售管理数据库,文件名为db811.DBC,并输入数据该数据库中有两个数据表:营销员数据表(YX.DBF)和产品销售记录表(XS.DBF)。其数据形式如下:营销员数据表(YX.DBF)产品销售记录表(XS.DBF)营销员编号姓名职务工作日期产品编号营销员编号数量单价销售月份1026张曙光经理2005.12.25589-168510263001289.4521078李解放主管2005.10.25589-16851026981289.4532123王新华主管2006.03.24589-168510781001289.4542122段德昌办事员2006.08.01589-168521221341289.4532105赵跃望办事员2006.09.09589-20002105561190.342589-20002123761190.343要求:将数据库中的YX.DBF(父表)和XS.DBF(子表)以“营销员编号”建立一对多的永久关系。2、建立程序文件COM-SQL811.PRG,要求将完成下列各小题任务的VFP数据表操作命令或VFP-SQL命令写在该程序文件中。在程序首行用注释语句注明考生姓名和准考证号,并用注释语句标注小题号。(1)查询单笔销售数量最大的营销员姓名和职务;(2))查询全部职务为“主管”的营销人员的产品销售明细,包括姓名、产品编号、销售金额和月份;(3)按“销售月份”分组汇总销售金额。3、表单设计。按以下要求设计程序界面,表单文件名为FORM811.SCX设计如图所示一个表单,包括2个标签,1个文本框(各控件的主要属性参照图形尺寸自定)。其中:(1)表单的标题还要显示考生自己的姓名和考号;(2)该程序的作用是输入月份值,显示对应季节的中文名字;(3)要求检查输入的数值是否在1~12区间,如果超出,要报错,等待下一次正确录入,不退出程序;(4)双击表单任意空白处,结束表单程序的运行。二级VFP上机练习题3参考答案2.1)SELECTTOP1XS.营销员编号,YX.姓名,职务;FROMYXINNERJOINXSONXS.营销员编号=YX.营销员编号;ORDERBY数量DESC2)SELECTYX.姓名,产品编号,数量*单价AS销售金额,销售月份;FROMYXINNERJOINXSONXS.营销员编号=YX.营销员编号;WHEREXS.营销员编号=ANY(SELEYX.营销员编号FROMYXWHERE职务='主管')3)select数量*单价AS销售金额,销售月份;fromxsgroupby销售月份3.界面设计,主要属性、事件代码:text1.validn=val(thisform.text1.value)ifn0orn12waitwindows'月份错误!!!'return.f.endifthisform.label2.visible=.t.docasecasen=3andn=5thisform.label2.caption='春'casen=6andn=8thisform.label2.caption='夏'casen=9andn=11thisform.label2.caption='秋'casen=12orn=2orn=1thisform.label2.caption='冬'endcaseform.dblclickthisform.release二级VFP上机练习题41、建立一商场消费数据库,文件名为:db812.DBC,并输入数据。该数据库中包括两个表文件:顾客信息表(GK.DBF)和顾客消费数据表(XF.DBF)。其数据形式如下:顾客信息表(GK.DBF)顾客消费数据表(XF.DBF)顾客编号姓名性别是否会员顾客编号购买商品消费金额消费积分085422王小凤女.T.74561化妆品588.00074561孙丽女.F.81313西服1280.00081313吴远平男.F.85211靴子566.00072453程志龙男.T.72453食品218.80085211李娟娟女.T.81313食品78
本文标题:二级VFP上机练习题12
链接地址:https://www.777doc.com/doc-2746143 .html