注册 登录
编程论坛 VFP论坛

如何统计最优学科、最次学科及每个学生各科成绩排名

王咸美 发布于 2023-03-14 15:24, 1867 次点击
现有表文件cj.dbf,如何统计最优学科、最次学科及每个学生各科成绩排名(见下图)
请高手赐教,万分感谢!!!

只有本站会员才能查看附件,请 登录

只有本站会员才能查看附件,请 登录


[此贴子已经被作者于2023-3-14 15:29编辑过]

20 回复
#2
sdta2023-03-14 15:55
#3
吹水佬2023-03-14 16:03
楼主的问题,参考自己发过的贴改进一下,99%都应该可以解决。
尤其是这类问题,大都存在不确定性,最好自己多练习总结一下。否则,说不定情况有变,不可能都找到人家帮忙。

[此贴子已经被作者于2023-3-14 16:06编辑过]

#4
schtg2023-03-14 16:53
回复 楼主 王咸美
可以参考sdts的帖子:https://bbs.bccn.net/thread-511509-1-1.html
#5
schtg2023-03-14 16:53
是这样的吗?不知对否?
只有本站会员才能查看附件,请 登录


[此贴子已经被作者于2023-3-14 16:55编辑过]

#6
王咸美2023-03-14 18:29
@schtg 正是我想要的结果!不知能提供具体代码供学习吗?
#7
qqln2023-03-14 18:42
USE cj
CREATE CURSOR ls (xm c(8),cjj n(4))
SELECT 1

SCAN
    FOR  i=3 TO 10
    aa1=field(i)
    aa2=&aa1
    INSERT INTO  ls VALUES (aa1,aa2)
    ENDFOR

    SELECT * FROM ls ORDER BY cjj DESC INTO CURSOR lsa
    SELECT lsa
    GO 1
    REPLACE 最优学科 WITH allt(lsa.xm)-':'+allt(STR(lsa.cjj)) IN 1
    GO bott
    REPLACE 最次学科 WITH allt(lsa.xm)-':'+allt(STR(lsa.cjj)) IN 1

tt=''
    SCAN
    tt=tt+IIF(LEN(tt)=0,'','*')+allt(lsa.xm)+' : '+allt(STR(lsa.cjj))

    ENDSCAN
     REPLACE 成绩排名 WITH tt IN 1
     
     SELECT ls
     zap
     SELECT 1
ENDSCAN
CLOSE ALL
#8
王咸美2023-03-14 18:58
谢谢!!!
#9
王咸美2023-03-14 20:02
@schtg 为什么运行上述程序反复出现下列提示?表中共3条记录,程序运行出现了3次提示。不知为何?盼指点!

 
只有本站会员才能查看附件,请 登录
#10
qqln2023-03-14 20:15
选是就可以,或程序第一行加上set safe off,在最后一行加上set safe on
#11
王咸美2023-03-14 20:22
@schtg 谢谢!!!问题已解决。
#12
王咸美2023-03-14 20:24
@schtg 再次表示感谢!!!

[此贴子已经被作者于2023-3-14 20:26编辑过]

#13
sdta2023-03-14 20:34
查帮助文件
万丈高楼平地起
#14
nbwww2023-03-14 21:01
我很好奇  这大兄弟是什么职业?
#15
丁春秋yxp2023-03-14 21:32
以下是引用nbwww在2023-3-14 21:01:42的发言:

我很好奇  这大兄弟是什么职业?

是啊,我也很好奇,好象是用VFP解决什么问题是的。提出来的这些,好好搞搞EXCEL来得更快吧
#16
zhken2023-03-14 22:20
规范文档格式是十分重要,从这里突破就很容易了
#17
sdta2023-03-14 22:32
以下是引用nbwww在2023-3-14 21:01:42的发言:

我很好奇  这大兄弟是什么职业?

看下他发的帖子就知道是什么职业了
#18
sam_jiang2023-03-15 02:31
学生吧
#19
qqln2023-03-15 05:31
回复 12楼 王咸美
你感谢错人吧?
#20
王咸美2023-03-15 07:21
@qqln 不好意思,弄错了。谢谢你!!!
#21
qqln2023-03-15 08:09
1