FOXPRO的作业问题~
XS表中登记着某年级学生某次考试的成绩,试编程显示出每班成绩最高者的姓名、性别和成绩。(在244服务器中已有XS表)。缴交作业时,请把程序文件(\.prg文件)或表单文件...
XS表中登记着某年级学生某次考试的成绩,试编程显示出每班成绩最高者的姓名、性别和成绩。(在244服务器中已有XS表)。
缴交作业时,请把程序文件(\.prg文件)或表单文件(.scx文件和.sct文件)以及数据表文件(xs.dbf)文件压缩成一文件(文件名字为你的学号+姓名)
记录号 学号 班别 姓名 性别 考试成绩
1 L20061001 1 李大豪 男 612
2 L20061002 1 陈小鲁 男 598
3 L20061003 1 琐萍 女 600
4 L20061004 1 邬彬辉 男 624
5 L20061005 1 胡小芳 女 576
6 L20062001 2 林好勇 男 480
7 L20062002 2 孔祥娜 女 634
8 L20062003 2 李胜利 男 643
9 L20063001 3 冯晓强 男 612
10 L20063002 3 黄小国 男 589
11 L20063003 3 林丽婷 女 602
12 L20063004 3 张思军 男 641
13 L20063005 3 韩良珍 女 580
14 L20064001 4 毛思彬 男 592
15 L20064002 4 方小卿 女 600
16 L20064003 4 洪成功 男 613
问题补充:要生成程序文件(.prg文件)或表单文件(.scx文件和.sct文件)
试过了貌似都不行耶……
答对追加悬赏~~ 展开
缴交作业时,请把程序文件(\.prg文件)或表单文件(.scx文件和.sct文件)以及数据表文件(xs.dbf)文件压缩成一文件(文件名字为你的学号+姓名)
记录号 学号 班别 姓名 性别 考试成绩
1 L20061001 1 李大豪 男 612
2 L20061002 1 陈小鲁 男 598
3 L20061003 1 琐萍 女 600
4 L20061004 1 邬彬辉 男 624
5 L20061005 1 胡小芳 女 576
6 L20062001 2 林好勇 男 480
7 L20062002 2 孔祥娜 女 634
8 L20062003 2 李胜利 男 643
9 L20063001 3 冯晓强 男 612
10 L20063002 3 黄小国 男 589
11 L20063003 3 林丽婷 女 602
12 L20063004 3 张思军 男 641
13 L20063005 3 韩良珍 女 580
14 L20064001 4 毛思彬 男 592
15 L20064002 4 方小卿 女 600
16 L20064003 4 洪成功 男 613
问题补充:要生成程序文件(.prg文件)或表单文件(.scx文件和.sct文件)
试过了貌似都不行耶……
答对追加悬赏~~ 展开
展开全部
在VFP命令状态下输入:
modi comm cjcl
在当前目录下生成cjcl.prg程序文件,然后向程序中输入如下代码:
close data
set safe off
use xs &&打开给定的数据表
total on 班别 to bj &&形成一个班级库
sort on 班别,考试成绩/d to xs1 &&先按班级,再按成绩从高到低排序
use xs1 &&从第1个工作区(即A区)打开按分班级成绩由高到低的库
sele 2 &&从第2个工作区(即B区)打开班级库
use bj
do while !eof() &&一个班一个班地处理
sele 1
loca for 班别=b.班别 &&找到本班的最高分考生
? 班别,姓名,性别,考试成绩 &&显示出每班成绩最高者的姓名、性别和成绩
sele 2
skip &&继续处理下一个班
enddo
close data
set safe on
输入完毕,按<Ctrl>+w 保存。程序已经在vfp6下测试运行通过。把当前文件夹下面的cjcl.prg压缩成文件(文件名字为你的学号+姓名)即可
modi comm cjcl
在当前目录下生成cjcl.prg程序文件,然后向程序中输入如下代码:
close data
set safe off
use xs &&打开给定的数据表
total on 班别 to bj &&形成一个班级库
sort on 班别,考试成绩/d to xs1 &&先按班级,再按成绩从高到低排序
use xs1 &&从第1个工作区(即A区)打开按分班级成绩由高到低的库
sele 2 &&从第2个工作区(即B区)打开班级库
use bj
do while !eof() &&一个班一个班地处理
sele 1
loca for 班别=b.班别 &&找到本班的最高分考生
? 班别,姓名,性别,考试成绩 &&显示出每班成绩最高者的姓名、性别和成绩
sele 2
skip &&继续处理下一个班
enddo
close data
set safe on
输入完毕,按<Ctrl>+w 保存。程序已经在vfp6下测试运行通过。把当前文件夹下面的cjcl.prg压缩成文件(文件名字为你的学号+姓名)即可
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
去最大值.prg
clear
USE xs
n=0
GO top
DO while !EOF()
n=n+1
SKIP
ENDDO
以上代码算出一共有n条记录
DIMENSION a(n) 建立个数组,进行成绩比大小
GO top
FOR i=1 to n
a(i)=cj 成绩字段cj写进数组
skip
ENDFOR
FOR j=1 to n-1
IF a(j)>a(j+1) 数组比大小,取出最大
nmax=a(j)
a(j)=a(j+1)
a(j+1)=nmax
ENDIF
ENDFOR
LOCATE for a(j)=cj 定位记录指针
?xh,cj 打印记录
测试通过了才贴出来得
xh为表xs成绩字段
cj为成绩字段
把以上代码写进prg
运行即可得出最大成绩记录
最后一行?你要显示得字段即可
如果不会,先回去补基础
把中文注释全部删除
去最大值.prg
clear
USE xs
n=0
GO top
DO while !EOF()
n=n+1
SKIP
ENDDO
DIMENSION a(n)
GO top
FOR i=1 to n
a(i)=成绩
skip
ENDFOR
FOR j=1 to n-1
IF a(j)>a(j+1)
nmax=a(j)
a(j)=a(j+1)
a(j+1)=nmax
ENDIF
ENDFOR
LOCATE for a(j)=成绩
?学号,成绩
不知所谓,不懂装懂,毫无发言权叫得比那个还大声。大家都过来帮忙就算是不错了,楼主也够厉害的,不太明白么自己好好学习去,有什么问题就想办法去解决,找个莫明其妙的人出来破坏学习的气氛。不管你针对谁了,大家过来留下答案了就要心存感激。有什么问题你完全可以发百度消息寻求解决方法。而不是捧着80分当宝。
最后还是要严重鄙视一下这个匿名垃圾!
clear
USE xs
n=0
GO top
DO while !EOF()
n=n+1
SKIP
ENDDO
以上代码算出一共有n条记录
DIMENSION a(n) 建立个数组,进行成绩比大小
GO top
FOR i=1 to n
a(i)=cj 成绩字段cj写进数组
skip
ENDFOR
FOR j=1 to n-1
IF a(j)>a(j+1) 数组比大小,取出最大
nmax=a(j)
a(j)=a(j+1)
a(j+1)=nmax
ENDIF
ENDFOR
LOCATE for a(j)=cj 定位记录指针
?xh,cj 打印记录
测试通过了才贴出来得
xh为表xs成绩字段
cj为成绩字段
把以上代码写进prg
运行即可得出最大成绩记录
最后一行?你要显示得字段即可
如果不会,先回去补基础
把中文注释全部删除
去最大值.prg
clear
USE xs
n=0
GO top
DO while !EOF()
n=n+1
SKIP
ENDDO
DIMENSION a(n)
GO top
FOR i=1 to n
a(i)=成绩
skip
ENDFOR
FOR j=1 to n-1
IF a(j)>a(j+1)
nmax=a(j)
a(j)=a(j+1)
a(j+1)=nmax
ENDIF
ENDFOR
LOCATE for a(j)=成绩
?学号,成绩
不知所谓,不懂装懂,毫无发言权叫得比那个还大声。大家都过来帮忙就算是不错了,楼主也够厉害的,不太明白么自己好好学习去,有什么问题就想办法去解决,找个莫明其妙的人出来破坏学习的气氛。不管你针对谁了,大家过来留下答案了就要心存感激。有什么问题你完全可以发百度消息寻求解决方法。而不是捧着80分当宝。
最后还是要严重鄙视一下这个匿名垃圾!
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
你如果把所有的回答都复制是100%的不行,你把解释去掉,只留中间的程序,肯定行。要是你连如何向vFP中输入程序都不会,干脆回家抱孩子去吧。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
倒。。。VFP 还有人完呀?
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询