如果算出 按照积分名次,倒序排列,赋值为16...1 ,在算出每个人的赋值分数,列出每个人所带班级跟上述一样,的平均积分。
程序代码:
CLOSE DATABASES ALL CREATE CURSOR zjfb (序号 c(12),姓名 c(8),班级数 n(5,0),班级名 c(30),总分 n(5,0),平均 n(7,2)) USE jfb IN 0 SELECT jfb LOCAL azd[FCOUNT()-1] FOR i=2 TO FCOUNT() azd[i-1]=FIELD(i) ENDFOR DIMENSION azd[ALEN(azd,1)/2,2] FOR i=1 TO ALEN(azd,1) INDEX on &azd[i,2] TO xm xm="" nxh=1 SCAN IF &azd[i,2]==xm REPLACE 班级数 WITH 班级数+1,班级名 WITH 班级名-","-jfb.bj,总分 WITH 总分+EVALUATE("jfb."+azd[i,1]),平均 WITH 总分/班级数 IN zjfb ELSE INSERT INTO zjfb VALUES (azd[i,2]+TRANSFORM(nxh),EVALUATE("jfb."+azd[i,2]),1,jfb.bj,EVALUATE("jfb."+azd[i,1]),EVALUATE("jfb."+azd[i,1])) nxh=nxh+1 ENDIF xm=&azd[i,2] ENDSCAN ENDFOR SELECT zjfb BROWSE