标题:关于一个急需解决的问题
只看楼主
ctyg
Rank: 1
等 级:新手上路
帖 子:1
专家分:3
注 册:2018-1-16
得分:3 
数组
可不可以把每个学生的成绩记录转为记录,然后处理记录,求记录的各个成绩的大小。。。
2018-01-16 15:12
wengjl
Rank: 14Rank: 14Rank: 14Rank: 14
等 级:贵宾
威 望:108
帖 子:2175
专家分:3785
注 册:2007-4-27
得分:0 
以下是引用pzh_zzw在2018-1-16 11:05:54的发言:

关键解决字段名和成绩一起显示的问题,成绩排序后,字段名不可能一起排序?就是需要解决这个问题,我还考虑过将一条记录生成一个临时表,但又面临语、数、外不参与排序的问题,所以不好解决?现在想不出这个办法。今后高考、中考改革,有些地区要这样计算的哟?比如北京中考方案就涉及到这个问题



北京的中考是 3必考 + 3选考。容易的。 

考务时,必考试场多,选考试场就少了。学生的准考证上,就是一个准考证号,但要多个试场号与座位号了。都是可能实现的

只求每天有一丁点儿的进步就可以了
2018-01-16 17:06
wengjl
Rank: 14Rank: 14Rank: 14Rank: 14
等 级:贵宾
威 望:108
帖 子:2175
专家分:3785
注 册:2007-4-27
得分:0 
你的问题我猜想是 表单的查询上,按成绩从高到低显示,是显示2项 “学科名称与成绩”。 对吗?

只求每天有一丁点儿的进步就可以了
2018-01-16 17:08
isealer
Rank: 3Rank: 3
等 级:论坛游侠
威 望:4
帖 子:33
专家分:110
注 册:2017-8-25
得分:3 


程序代码:
Create Table testscore (姓名 C(10),物理 N(3),化学 N(3),生物 N(3),政治 N(3), ;
    历史 N(3),地理 N(3),语文 N(3),数学 N(3),英语 N(3))
Insert Into testscore Values ('张三',90,98,93,97,100,98,130,130,130)
Insert Into testscore Values ('李四',72,96,82,91,98,68,130,130,130)

Dimension aScoreCourse[7,2]
Scan
    aScoreCourse[1,1]=Trim(姓名)
    aScoreCourse[1,2]=Trim(姓名)
    For i=2 To 7
        aScoreCourse[i,1]=Evaluate(Field(i))
        aScoreCourse[i,2]=Field(i)
    Next
    Asort(aScoreCourse,3,-1,1)
    For k=1 To 7
        ShowScore=Iif(k=1,'aScoreCourse['+Transform(k)+',1]',ShowScore+',aScoreCourse['+Transform(k)+',1]')
        ShowCourse=Iif(k=1,'aScoreCourse['+Transform(k)+',2]',ShowCourse+',aScoreCourse['+Transform(k)+',2]')
    Next
    ?&ShowScore
    ?&ShowCourse
Endscan


[此贴子已经被作者于2018-1-16 17:47编辑过]

2018-01-16 17:35
pzh_zzw
Rank: 1
等 级:新手上路
帖 子:5
专家分:0
注 册:2018-1-14
得分:0 
回复 14楼 isealer
谢谢!非常实用
2018-01-17 08:14
pzh_zzw
Rank: 1
等 级:新手上路
帖 子:5
专家分:0
注 册:2018-1-14
得分:0 
回复 14楼 isealer
谢谢你提供的程序,今后多向你请教。能否留下你的QQ,今后多向你请教和学习!!
2018-01-17 08:33
wengjl
Rank: 14Rank: 14Rank: 14Rank: 14
等 级:贵宾
威 望:108
帖 子:2175
专家分:3785
注 册:2007-4-27
得分:0 
感觉像打印工资条那样,只是多了一个排序,每个人的项目位置有变化

只求每天有一丁点儿的进步就可以了
2018-01-17 08:34
isealer
Rank: 3Rank: 3
等 级:论坛游侠
威 望:4
帖 子:33
专家分:110
注 册:2017-8-25
得分:0 
以下是引用pzh_zzw在2018-1-17 08:33:43的发言:

谢谢你提供的程序,今后多向你请教。能否留下你的QQ,今后多向你请教和学习!!


献丑了,我也是现学现卖,只掌握了一点皮毛

其实这个问题很简单,关键是你提问的时候没把数据表样本上传上来,坛子里面能解决此问题的大有人在
2018-01-17 09:35
sdta
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:江苏省连云港市
等 级:版主
威 望:323
帖 子:9621
专家分:26174
注 册:2012-2-5
得分:0 
Clear
Create Cursor testscore (姓名 C(10),物理 N(3),化学 N(3),生物 N(3),政治 N(3), ;
    历史 N(3),地理 N(3),语文 N(3),数学 N(3),英语 N(3))
Insert Into testscore Values ('张三',90,98,93,97,100,98,130,130,130)
Insert Into testscore Values ('李四',72,96,82,91,98,68,130,130,130)
SCAN
    SCATTER FIELDS 姓名,物理,化学,生物,政治,历史,地理 TO aa
    LOCAL bb[6]
    FOR i=2 TO ALEN(aa,1)
        bb[i-1]=PADL(aa[i],3,"0")+FIELD(i)
    ENDFOR
    =ASORT(bb,1,6,1)
    ?姓名+" "
    ?"======================"
    ?
    FOR i=1 TO 6
        ??bb[i]+" "
    ENDFOR
ENDSCAN

坚守VFP最后的阵地
2018-01-17 11:56
gs2536785678
Rank: 10Rank: 10Rank: 10
等 级:贵宾
威 望:45
帖 子:565
专家分:1668
注 册:2017-7-16
得分:0 
每个学生的物化生政史地成绩要从高到低排序,再按照比例计入总分?
少见,兗然有这样的成绩统计方法,开眼了。
2018-02-18 08:13



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-484239-1-1.html




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

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