| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 847 人关注过本帖
标题:求助数字排序题
只看楼主 加入收藏
ycvf
Rank: 2
等 级:论坛游民
帖 子:210
专家分:56
注 册:2012-8-25
结帖率:75.61%
收藏
已结贴  问题点数:20 回复次数:9 
求助数字排序题
数字排序.rar (1.83 KB)

输入三个不同的数,将它们从大到小排序。
在VFP6.0下的表单中,运行以上程序,出错!
2014-12-15 15:44
sdta
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:江苏省连云港市
等 级:版主
威 望:335
帖 子:9841
专家分:27213
注 册:2012-2-5
收藏
得分:20 
* 排序按钮代码
Local Apx[3]
With ThisForm
    Apx[1]=.Text1.Value
    Apx[2]=.Text2.Value
    Apx[3]=.Text3.Value
    =Asort(Apx)
    .Label1.Caption=Transform(Apx[1])
    .Label2.Caption=Transform(Apx[2])
    .Label3.Caption=Transform(Apx[3])
    .Refresh
EndWith

[ 本帖最后由 sdta 于 2014-12-15 16:07 编辑 ]

坚守VFP最后的阵地
2014-12-15 15:59
sdta
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:江苏省连云港市
等 级:版主
威 望:335
帖 子:9841
专家分:27213
注 册:2012-2-5
收藏
得分:0 
a>b>c 书写错误
正确写法
a>b and b>c

所以报错

如果输入10个数字,光写代码就能让你伤脑筋

[ 本帖最后由 sdta 于 2014-12-15 16:08 编辑 ]

坚守VFP最后的阵地
2014-12-15 16:03
ycvf
Rank: 2
等 级:论坛游民
帖 子:210
专家分:56
注 册:2012-8-25
收藏
得分:0 
以下是引用sdta在2014-12-15 15:59:44的发言:

* 排序按钮代码
Local Apx[3]
With ThisForm
    Apx[1]=.Text1.Value
    Apx[2]=.Text2.Value
    Apx[3]=.Text3.Value
    =Asort(Apx)
    .Label1.Caption=Transform(Apx[1])
    .Label2.Caption=Transform(Apx[2])
    .Label3.Caption=Transform(Apx[3])
    .Refresh
EndWith
Apx什么意思?在帮助文件中找不到

落花人独立,微雨燕双飞。
2014-12-15 16:57
sdta
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:江苏省连云港市
等 级:版主
威 望:335
帖 子:9841
专家分:27213
注 册:2012-2-5
收藏
得分:0 
定义的数组变量,建议楼主多看看帮助,底子太簿了啊。

坚守VFP最后的阵地
2014-12-15 17:24
ycvf
Rank: 2
等 级:论坛游民
帖 子:210
专家分:56
注 册:2012-8-25
收藏
得分:0 
初学,还没学数组

落花人独立,微雨燕双飞。
2014-12-16 16:12
hu9jj
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:红土地
等 级:贵宾
威 望:400
帖 子:11857
专家分:43421
注 册:2006-5-13
收藏
得分:0 
以下是引用zlz66668888在2014-12-16 17:13:27的发言:

看了表单中的代码,觉得这种做法不妥。
除了版主给的Asort处理方法外,也可以用以下方式处理。
先比较a、b,如果a大,交换一下a、b。
再比较a、c,如果a大,交换一下a、c。
最后比较b、c,如果b大,交换一下b、c。

这就是著名的冒泡排序法。

活到老,学到老!http://www.(该域名已经被ISP盗卖了)E-mail:hu-jj@
2014-12-17 08:01
sdta
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:江苏省连云港市
等 级:版主
威 望:335
帖 子:9841
专家分:27213
注 册:2012-2-5
收藏
得分:0 
如果有10组数字,这种冒泡法,你的代码不知要写多少,直写到你口吐白沫,还不一定能写好

坚守VFP最后的阵地
2014-12-17 09:01
panpende
Rank: 8Rank: 8
等 级:蝙蝠侠
威 望:4
帖 子:528
专家分:963
注 册:2009-4-27
收藏
得分:0 
进来学习学习
2014-12-18 07:27
hu9jj
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:红土地
等 级:贵宾
威 望:400
帖 子:11857
专家分:43421
注 册:2006-5-13
收藏
得分:0 
以下是引用zlz66668888在2014-12-18 11:20:54的发言:

严格说来,它可能更像是 比较排序法。
 
还可以用:
比较 a、b ,a大,交换a、b。
再比较b、c,b大,交换b、c。
最后再次比较a、b,a大,交换a、b。


[ 本帖最后由 hu9jj 于 2014-12-18 14:45 编辑 ]

活到老,学到老!http://www.(该域名已经被ISP盗卖了)E-mail:hu-jj@
2014-12-18 14:44
快速回复:求助数字排序题
数据加载中...
 
   



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

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