| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 5128 人关注过本帖
标题:VFP行排名?如何做?
只看楼主 加入收藏
分号
Rank: 1
等 级:新手上路
帖 子:156
专家分:0
注 册:2006-12-4
收藏
得分:0 
每班都是这样。排序,横排。出各科在6科中的位次。
2020-06-11 11:14
sdta
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:江苏省连云港市
等 级:版主
威 望:335
帖 子:9848
专家分:27241
注 册:2012-2-5
收藏
得分:0 
写出你的最后结果

坚守VFP最后的阵地
2020-06-11 11:28
瓜瓜1990
Rank: 7Rank: 7Rank: 7
等 级:贵宾
威 望:18
帖 子:125
专家分:699
注 册:2020-2-25
收藏
得分:10 
默认升序,可用参考asort()参数设置
图片附件: 游客没有浏览图片的权限,请 登录注册

程序代码:
CLOSE TABLES all
USE 表1
cfldlist='语文,数学,英语,物理,化学,生物'
n=ALINES(afld,cfldlist,1+4,',')
DIMENSION awc(n,2)
SCAN
    FOR i=1 TO n
        awc(m.i,1)=afld(m.i)+"位次"
        cmc=afld(m.i)+"名次"
        awc(m.i,2)=&cmc
    ENDFOR
    =ASORT(awc,2)    
    k=1
    pre=awc(1,2)
    FOR i=1 TO n
        if awc(i,2)#pre
            k=i
            pre=awc(i,2)
        endif    
        replace &awc(i,1) WITH k
    endfor    
ENDSCAN


[此贴子已经被作者于2020-6-11 11:34编辑过]


piu~piu~
2020-06-11 11:30
分号
Rank: 1
等 级:新手上路
帖 子:156
专家分:0
注 册:2006-12-4
收藏
得分:0 
t1.rar (254 Bytes)


图片附件: 游客没有浏览图片的权限,请 登录注册


每个班横排按照科目名次,排出位次名次。包含并列。
2020-06-11 11:34
分号
Rank: 1
等 级:新手上路
帖 子:156
专家分:0
注 册:2006-12-4
收藏
得分:0 
回复 13楼 瓜瓜1990
对,就是横排排列名次。
2020-06-11 11:34
sdta
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:江苏省连云港市
等 级:版主
威 望:335
帖 子:9848
专家分:27241
注 册:2012-2-5
收藏
得分:10 
程序代码:
SELECT * FROM 表1 INTO CURSOR tt READWRITE 
SCAN
    SCATTER FIELDS EXCEPT 班级 TO azd
    nRows = ALEN(azd) / 2
    FOR i = 1 TO nRows
        azd[i * 2] = FIELD(i * 2 + 1)
    ENDFOR
    DIMENSION azd[nRows, 2]
    ASORT[azd, 1]
    nwc = 1
    nmc = azd[1,1]
    FOR i = 1 TO nRows
        IF azd[i, 1] != nmc
            nwc = i
            nmc = azd[i,1]
        ENDIF 
        REPLACE (azd[i, 2]) WITH nwc
    ENDFOR
ENDSCAN 
BROWSE 

坚守VFP最后的阵地
2020-06-11 13:27
分号
Rank: 1
等 级:新手上路
帖 子:156
专家分:0
注 册:2006-12-4
收藏
得分:0 
名次大的算最后一名,名次小的算第一名。这样如何算?就是倒序排序。

[此贴子已经被作者于2020-6-12 22:15编辑过]

2020-06-12 22:13
分号
Rank: 1
等 级:新手上路
帖 子:156
专家分:0
注 册:2006-12-4
收藏
得分:0 
就是倒序排名次,
2020-06-12 22:24
sdta
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:江苏省连云港市
等 级:版主
威 望:335
帖 子:9848
专家分:27241
注 册:2012-2-5
收藏
得分:0 
回复 18楼 分号
楼上的代码不符合楼主的要求吗

坚守VFP最后的阵地
2020-06-12 22:37
分号
Rank: 1
等 级:新手上路
帖 子:156
专家分:0
注 册:2006-12-4
收藏
得分:0 
倒序呢?
2020-06-13 10:35
快速回复:VFP行排名?如何做?
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.025451 second(s), 9 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved