| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 4503 人关注过本帖
标题:求助:用成绩库,制作一分一档表。
只看楼主 加入收藏
wyzeaaa
Rank: 1
等 级:新手上路
帖 子:94
专家分:0
注 册:2019-6-4
结帖率:83.33%
收藏
已结贴  问题点数:20 回复次数:22 
求助:用成绩库,制作一分一档表。
图片附件: 游客没有浏览图片的权限,请 登录注册


有成绩库,如何制作一个和上图类似的一分一档表。

cjk.rar (964 Bytes)


[此贴子已经被作者于2019-9-11 11:03编辑过]

搜索更多相关主题的帖子: 制作 成绩 
2019-09-11 10:01
wengjl
Rank: 14Rank: 14Rank: 14Rank: 14
等 级:贵宾
威 望:109
帖 子:2197
专家分:3838
注 册:2007-4-27
收藏
得分:0 
数据表的命名要用字母开头才好

只求每天有一丁点儿的进步就可以了
2019-09-11 10:31
gs2536785678
Rank: 10Rank: 10Rank: 10
等 级:贵宾
威 望:45
帖 子:601
专家分:1770
注 册:2017-7-16
收藏
得分:0 
图片附件: 游客没有浏览图片的权限,请 登录注册

用EXCEL,非常方便

[此贴子已经被作者于2019-9-11 13:46编辑过]

2019-09-11 13:43
wyzeaaa
Rank: 1
等 级:新手上路
帖 子:94
专家分:0
注 册:2019-6-4
收藏
得分:0 
回复 3楼 gs2536785678
谢谢,EXCEL的已经弄好。
想知道怎么用VFP本身的程序设计来完成。
2019-09-11 13:50
gs2536785678
Rank: 10Rank: 10Rank: 10
等 级:贵宾
威 望:45
帖 子:601
专家分:1770
注 册:2017-7-16
收藏
得分:7 
图片附件: 游客没有浏览图片的权限,请 登录注册
2019-09-11 14:18
gs2536785678
Rank: 10Rank: 10Rank: 10
等 级:贵宾
威 望:45
帖 子:601
专家分:1770
注 册:2017-7-16
收藏
得分:0 
图片附件: 游客没有浏览图片的权限,请 登录注册
2019-09-11 14:19
wyzeaaa
Rank: 1
等 级:新手上路
帖 子:94
专家分:0
注 册:2019-6-4
收藏
得分:0 
回复 5楼 gs2536785678
好的,测试了一下,目标实现,感觉运行了好几秒的时间完成。
达到这个要求,程序是不是有多种写法?
用什么scan...endscan,或者do....enddo,应该都能解决是吗?



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

用这个,FOR i=594 TO 1 STEP -1
就会每一个分数都有 594.593.592.591......,
但是考试时,有的分数是没有人的,比如没有考593分的学生,成绩库(cjk)中,并没有这个分数,这个593分也显示为第2名。
当然,这个也可最后将“同分人数=0”的,PACK掉。


有什么办法,不生成新表,直接在原表cjk中,生成这些数据,替换到相应字段?


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

麻烦老师看一下加的备注,这样理解对吗?

[此贴子已经被作者于2019-9-11 17:07编辑过]

2019-09-11 15:34
sdta
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:江苏省连云港市
等 级:版主
威 望:335
帖 子:9798
专家分:26886
注 册:2012-2-5
收藏
得分:7 
程序代码:
CLOSE DATABASES 
SELECT MIN(总分) nmin, MAX(总分) nmax FROM cjk INTO ARRAY afs
CREATE CURSOR tj (分数段 n(5), 人数 n(4), 累计人数 n(4))
FOR i = afs[1, 2] TO afs[1, 1] STEP - 1
    INSERT INTO tj (分数段) VALUES (i)
ENDFOR
INDEX ON 分数段 TAG fsd
SELECT cjk 
BROWSE 
SET RELATION TO 总分 INTO tj
SCAN 
    REPLACE 人数 WITH 人数 + 1 IN tj 
ENDSCAN
SET RELATION TO 
SELECT tj
SET ORDER TO 
nCnt = 0
SCAN 
    nCnt = nCnt + 人数
    REPLACE 累计人数 WITH nCnt
ENDSCAN
BROWSE 

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

坚守VFP最后的阵地
2019-09-11 19:33
wyzeaaa
Rank: 1
等 级:新手上路
帖 子:94
专家分:0
注 册:2019-6-4
收藏
得分:0 
谢谢sdta老师,明天测试学习一下了。
2019-09-11 20:08
gs2536785678
Rank: 10Rank: 10Rank: 10
等 级:贵宾
威 望:45
帖 子:601
专家分:1770
注 册:2017-7-16
收藏
得分:0 
这位朋友可能没有创作过运行时间较长的程序代码
很多时间,因为运行时间长,所以窗口上要放置
[进度条]
我如今运行的许多程序至少要2分钟才能结束,
主要的原因是数据多。
说以上的话,是告诉朋友,不必要顾及程序运行时间
只要是能够运行正确的代码,就叫[好代码]
2019-09-12 07:25
快速回复:求助:用成绩库,制作一分一档表。
数据加载中...
 
   



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

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