大学VF上机试题 下载本文

*07101

1、建立一个计算机考试成绩管理数据库,文件名为:CJGL.DBC,并输入数据。(40分) 该数据库中有两个数据表:学生信息表(XS.DBF)和学生成绩表(CJ.DBF)。其数据形式如下:

学生信息表(XS.DBF) 学生成绩表(CJ.DBF)

要求:将数据库(CJGL.DBC)中的XS.DBF(父表)和CJ.DBF(子表)以“考号”建立一对一永久关系。

参考答案:

数据类型:考号C(8),姓名C(6)

考号C(8),笔试成绩N(2),上机成绩C(6),成绩合格否L 索引类型: XS表 ——考号(主索引) CJ表 ——考号(候选索引)

2、建立程序文件COM-SQL711. PRG,要求将完成下列各小题任务的VFP数据表操作命令或VFP-SQL命令写在该程序文件中。在程序首行用注释语句注明考生姓名和准考证号,并用注释语句标注小题号。(30分)

(1)正确修改每个学生的“成绩合格否”字段,并填入学生成绩表CJ.DBF中。规定笔试成绩<60或上机成绩为“缺考”或“不及格”,则该字段值为.F.,否则为.T. ; (2)查询并显示成绩合格的考生考号、姓名、笔试成绩和上机成绩; (3)逻辑删除学生成绩表CJ.DBF中,上机考试缺考的考生。 参考答案:

*姓名:××× 准考证号:××××××

*(1)

update CJ set 成绩合格否=.T. where 笔试成绩>=60 and; (上机成绩=\优\上机成绩=\及格\

*(2)

select CJ.考号,姓名,笔试成绩,上机成绩 from XS,CJ; where XS.考号=CJ.考号 and 成绩合格否=.T.

*(3)

delete from CJ where 上机成绩=\缺考\

3、表单设计。按以下要求设计程序界面,表单文件名为:FORM711.SCX。

设计如图所示一个表单,包括3个标签,3个文本框,1个命令按钮(各控件的大小、颜色、字体、字号等属性由考生自定)。其中:

(1)表单的标题要显示考生自己的姓名和考号;

(2)文本框text1、text2和text3的显示初值为0;

(3)该表单运行后,可以在文本框text1、text2中输入成绩(0~100),左键单击“计算”命令按钮,则在文本框text3中显示平均成绩,要求保留一位小数; (4)双击表单空白处结束表单程序的运行。

参考答案:

(1)设置表单form1的caption属性为考生自己的姓名和考号; (2)设置文本框text1、text2和text3的value属性为0; (3)在“计算”命令按钮command1的click事件里编写代码

x=thisform.text1.value

y=thisform.text2.value

thisform.text3.value=round((x+y)/2,1) (4)在form1的dblclick事件里编写代码

thisform.release *07102

1、建立一个工资管理数据库,文件名为GZGL.DBC,并输入数据。

该数据库中有两个数据表:职工数据表(ZGB.DBF)和工资数据表(GZB.DBF)。其数据形式如下:

职工数据表(ZGB.DBF) 工资数据表(GZB.DBF)

要求:将数据库(GZGL.DBC)中的ZGB.DBF(父表)和GZB .DBF(子表)以“职工号”建立一对一永久关系。 参考答案:

数据类型:职工号C(6),姓名C(6),婚否L,职称C(6)

职工号C(6),基本工资N(7,2),津贴N(5,1),奖金N(3),公积金N(3),实发工资N(7,2) 索引类型: ZGB表 —— 职工号(主索引)

GZB表 ——职工号(主索引或候选索引)

2、建立程序文件COM-SQL712.PRG,要求将完成下列各小题任务的VFP数据表操作命令或VFP-SQL命令写在该程序文件中。在程序首行用注释语句注明考生姓名和准考证号,并用注释语句标注小题号。 (1)计算每个职工的“实发工资”字段,并填入工资数据表GZB .DBF中。其中:实发工资=基本工资+津贴+奖金-公积金;

(2)显示未婚职工的职工号、姓名、基本工资和实发工资; (3)计算工资表GZB中所有职工的平均奖金和实发工资总额。 参考答案:

*姓名:××× 准考证号:×××××× *(1)

update gzb set 实发工资=基本工资+津贴+奖金-公积金 *(2)

select gzb.职工号,姓名,基本工资,实发工资 from zgb,gzb; where gzb.职工号=zgb.职工号 and 婚否=.F.

*(3)

select avg(奖金) as 平均奖金,sum(实发工资) as 实发工资总额 from gzb

3、表单设计。按以下要求设计程序界面,表单文件名为:FORM712.SCX。

设计如图所示一个表单,包括4个标签,3个文本框,1个命令按钮(各控件的大小、颜色、字体、字号等属性由考生自定)。其中: (1)表单顶部的标签用来显示考生自己的姓名和考号; (2)文本框text1、text2和text3的显示初值为0;

(3)该表单运行后,可以在文本框text1中输入圆的半径(> 0),光标移到文本框text2、text3时,可以分别计算圆的面积和圆的周长,要求保留两位小数(其中π=3.14159) (4)左键单击“关闭”按钮,结束表单程序的运行。

参考答案:

(1)设置标签LABEL1的caption属性为考生自己的姓名和考号; (2)设置文本框text1、text2和text3的value属性为0; (3)在text2的gotfocus事件里编写代码

a=thisform.text1.value if a>0

b=pi()*a^2

this.value=round(b,2) endif

在text3的gotfocus事件里编写代码

a=thisform.text1.value

if a>0

b=2*pi()*a

this.value=round(b,2)

endif

(4)在command1的click事件里编写代码 thisform.release *07103

1、建立一个运动会成绩管理数据库,文件名为YDCJGL.DBC,并输入数据。

该数据库中有两个数据表:运动员基本情况表(JBB.DBF)和运动成绩表(YDCJ.DBF)。其数据形式

如下:

运动员基本情况表(JBB.DBF) 运动成绩表(YDCJ.DBF)

要求:将数据库(YDCJGL)中的JBB .DBF(父表)和YDCJ.DBF(子表)以“编号”建立一对一永久关系。 参考答案:

数据类型:编号C(5),姓名C(6),部门C(4)

编号C(5),跳高N(1),游泳N(1),其它N(1),总成绩N(2) 索引类型: JBB表 —— 编号(主索引)

YDCJ表 ——编号(主索引或候选索引) 2、建立程序文件COM-SQL713.PRG,要求将完成下列各小题任务的VFP数据表操作命令或VFP-SQL命令写在该程序文件中。在程序首行用注释语句注明考生姓名和准考证号,并用注释语句标注小题号。 (1)计算每位运动员的“总成绩”字段,并填入运动成绩表YDCJ.DBF中,其中:总成绩=跳高+游泳+其它;

(2)按总成绩从高到低的顺序显示运动员的编号及总成绩; (3)显示“机关”部门各运动员的编号、姓名和总成绩。 参考答案:

*姓名:××× 准考证号:××××××

*(1)

update ydcj set 总成绩=跳高+游泳+其它

*(2)

select 编号,总成绩 from ydcj order by 总成绩 desc *(3)

select ydcj.编号,姓名,总成绩 from ydcj,jbb; where ydcj.编号=jbb.编号 and 部门=\机关\

3、表单设计。按以下要求设计程序界面,表单文件名为:FORM713.SCX。

设计如图所示一个表单,包括4个标签,3个文本框,2个命令按钮(各控件的大小、颜色、字体、字号等属性由考生自定)。其中:

(1)表单顶部的标签用于显示考生自己的姓名和考号;

(2)文本框text1、text2和text3的显示初值为0;

(3)该表单运行后,可以在文本框text1、text2中分别输入一个数,左键单击“比较大小”命令按钮,则在文本框text3中显示较大的一个数;

(4)左键单击“退出”命令按钮,结束表单程序的运行。