vfp编程题

vfp编程题,第1张

*建立程序:modify command <程序名>

clear

close all

*(1)计算每条记录的总分

use 学生表

replace all 总分 with 数学+语文+英语+数据库

*(2)将总分大于等于360分的女同学的总分提高10%

replace all 总分 with 总分*1.1 for 总分>=360

*(3)将总分大于等于320分的记录,其奖学金评定为800元

replace all 奖学金 with 800 for 总分>=320

*求总分字段最大值,最小值

go top

a=总分

min=1000

max=0

do while ! eof()

b=总分

if a>b

max=a

if b<min

min=b

endif

else

max=b

if a<min

min=a

endif

endif

skip

enddo

*(4)将总分最高的记录其奖学金增加500元,并显示该记录

replace 奖学金 with 奖学金+500 for 总分=max

display

*(5)将总分最低的记录作逻辑删除,并显示该记录

locate for 总分=min(总分)

delete

display

use

第四十四套

一、基本 *** 作题(共4小题,第1和2题是7分、第3和4题是8分)

在考生目录下完成如下 *** 作:

1. 建立菜单QUERY_MENU。该菜单只有"查询"和"退出"两个主菜单项(条形菜单),

其中单击菜单项"退出"时,返回到VFP系统菜单(相应命令写在命令框中,不要

写在过程中)。

2. 将COURSE表的"开课系部"字段名改为"开课单位",其余不变。

3. 从数据库SCORE_MANAGER中移去表TEMP2.DBF(不是删除)。

4. 将SCORE1表中记录按学号从低到高排序,在学号相同的情况下再按成绩从高

到低排序,排序结果存入表NEW_ORDER。

本题主要考核点:

菜单的建立、字段改名、数据库表的逻辑删除、表的排序及查询去向等知识点

本题解题思路:

第1题:本题的主要考核点是菜单的建立。新建菜单可按下列步骤:选择"文件"菜单中的"新建"命令,在"新建"对话框中选择"菜单",单击"新建文件"按钮。在"新建菜单"对话框中选择"菜单"按钮,调出"菜单设计器"。也可用CREATE MENU命令直接调出菜单设计器。在菜单名称中填入"查询"、"退出","退出"结果为命令"SET SYSMENU TO DEFAULT"。

第2题:本题的主要考核点是字段的改名。

打开COURSE表表设计器,将光标移动到"开课系部"字段格中,将其改为"开课单位"。

第3题:本题的主要考核点是数据库表的逻辑删除。

打开考生文件夹下的" SCORE_MANAGER "数据库,在" SCORE_MANAGER "数据库设计器中,选中"TEMP2"表,点击主菜单"数据库"下的"移去",在d出的对话框中点击"移去"按钮,在随后d出的对话框中点击"是"按钮,至此便完成了"从数据库"SCORE_MANAGER"中移去表TEMP2(不是删除)"的 *** 作。

第4题:本题的主要考核点是表的排序知识,查询去向。

select * from score1 order by 学号,成绩 desc

into table new_order

二、简单应用(2小题,每题20分,计40分)

在考生文件夹下完成如下简单应用:

1. 在SCORE_MANAGER数据库中统计选修了课程的学生人数(选修多门时,只

计算1次),统计结果保存在一个新表NEW_TABLE中,表中只有一个字段,字段名

为学生人数。

2. 在SCORE_MANAGER数据库中查询没有学生选修的课程,查询结果含"课程

名"和"开课单位"字段,结果按课程名升序保存在一个新表NEW_TABLE2中(注意:

字段名"开课单位"是在基本 *** 作中根据"开课系部"修改后的字段名)。

本题主要考核点:

本题的主要考核点是SQL查询语句的使用,查询去向等知识点。

本题解题思路:

第1题: 本题可以通过新建一个程序来实现统计,相关代码如下所示:

SELECT Student.姓名

FROM course INNER JOIN score1

INNER JOIN student

ON Student.学号 = Score1.学号

ON Course.课程号 = Score1.课程号

WHERE Course.课程号 = score1.课程号

GROUP BY Student.姓名

into cursor temp

select count(姓名) AS 学生人数 from temp

into table NEW_TABLE

第2题:本题的主要考核点是SQL查询语句的使用。

SELECT Course.课程名, Course.开课单位

FROM course LEFT OUTER JOIN score1

LEFT OUTER JOIN student

ON Student.学号 = Score1.学号

ON Course.课程号 = Score1.课程号

WHERE Course.课程号 !=Score1.课程号

ORDER BY Course.课程名

INTO TABLE new_table2.dbf

三、综合应用(1小题,计30分)

SCORE_MANAGER数据库中含有三个数据库表STUDENT、SCORE1和COURSE。

为了对SCORE_MANAGER数据库数据进行查询,设计一个表单Myform3(控件名为

form1,表单文件名为Myform3)。表单标题为"成绩查询";表单有"查询"(名称为

Command1)和"退出"(名称为Command2)两个命令按钮。表单运行时,单击"查询"

按钮,查询每门课程的分,查询结果中含"课程名"和"分"字段,结果按

课程名升序保存在表NEW_TABLE3。

单击"退出"按钮,关闭表单。

本题主要考核点:

表单文件的创建、控件的属性的修改、SQL语句运用、表单的退出等知识点

本题解题思路:

第一步:在Visual FoxPro主窗口中按下组合键Ctrl+N,系统d出"新建"对话框,在文件类型中选择"表单",点击"新建文件"按钮,系统将打开表单设计器;或直接在命令窗口中输入 crea form Myform3

第二步:点击工具栏按钮"表单控件工具栏",在d出的"表单控件"工具栏中,选中"命令按钮"控件,在表单设计器中拖动鼠标,这样在表单上得到一个"命令按钮"控件command1,用同样的方法为表单再加入一个"命令按钮"控件command2;

相关控件的属性值如下:

对象属性属性值

Form1 Caption 成绩查询

Command1Caption 查询

Command2Caption 退出

****命令按钮command1(查询)的Click事件代码如下****

SELECT Course.课程名, MAX(score1.成绩) AS 分

FROM course INNER JOIN score1

INNER JOIN student

ON Student.学号 = Score1.学号

ON Course.课程号 = Score1.课程号

GROUP BY Course.课程名

INTO TABLE NEW_TABLE3

****命令按钮command2(退出)的Click事件代码如下****

thisform.release


欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/yw/11662101.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-05-17
下一篇2023-05-17

发表评论

登录后才能评论

评论列表(0条)

    保存