易语言数值排序

易语言数值排序请老师帮忙讲解下,每天也就两小时学习时间琢磨下就该休息了,然后第二天又会模模糊糊,还请老师们帮我看看本质错误在哪里?

你这个程序错误有2点,1)b=2,就永远跟数组[2]比大小;2)如果的比大小,数字转换的结果是两个一样大的数。

.版本 2

.程序集 窗口程序集_启动窗口

.程序集变量 文本, 文本型

.程序集变量 文本组, 文本型, , "0"

.程序集变量 数组, 文本型, , "0"

.程序集变量 计次, 整数型

.程序集变量 计数, 整数型

.子程序 __启动窗口_创建完毕

编辑框1.是否允许多行 = 真

编辑框2.是否允许多行 = 真

_选择框1_被单击 ()

.子程序 _按钮1_被单击

文本组 = 分割文本 (编辑框1.内容, “,”, )

编辑框2.内容 = “”

清除数组 (数组)

数字排序 ()

.计次循环首 (取数组成员数 (数组), 计次)

编辑框2.加入文本 (数组 [计次])

.如果真 (取数组成员数 (数组) ≠ 计次)

编辑框2.加入文本 (选择框1.标题)

.如果真结束

.计次循环尾 ()

.子程序 数字排序

.计次循环首 (取数组成员数 (文本组), 计次)

.如果真 (文本组 [计次] = “”)

到循环尾 ()

.如果真结束

文本 = 文本组 [计次]

.计次循环首 (取数组成员数 (文本组), 计数)

.如果真 (计次 = 计数 或 文本组 [计数] = “”)

到循环尾 ()

.如果真结束

.如果真 (选择框1.选中 且 到数值 (文本组 [计数]) > 到数值 (文本))

文本 = 文本组 [计数]

.如果真结束

.如果真 (选择框1.选中 = 假 且 到数值 (文本组 [计数]) < 到数值 (文本))

文本 = 文本组 [计数]

.如果真结束

.计次循环尾 ()

.计次循环首 (取数组成员数 (文本组), 计数)

.如果真 (文本组 [计数] = 文本)

文本组 [计数] = “”

加入成员 (数组, 文本)

跳出循环 ()

.如果真结束

.计次循环尾 ()

.计次循环尾 ()

.计次循环首 (取数组成员数 (文本组), 计次)

.如果真 (文本组 [计次] ≠ “”)

跳出循环 ()

.如果真结束

.计次循环尾 ()

.如果真 (计次 ≤ 取数组成员数 (文本组))

数字排序 ()

.如果真结束

.子程序 _选择框1_被单击

.如果 (选择框1.选中)

选择框1.标题 = “>”

.否则

选择框1.标题 = “<”

.如果结束

追问

🤗🤗🤗🤗

这是修改后的源码

温馨提示:答案为网友推荐,仅供参考
第1个回答  2018-09-19
.程序集 窗口程序集1
.程序集变量 分割的数字, 整数型, , "0"
.子程序 整数排列
.参数 大小排列, 逻辑型
.局部变量 计次, 整数型
清除数组 (分割的数字) ' 先把数组归零以清除上次的数据
.计次循环首 (取文本长度 (编辑框1.内容), 计次)
加入成员 (分割的数字, 到数值 (取文本中间 (编辑框1.内容, 计次, 1))) ' 把文本数字分割并存入数组
.计次循环尾 ()
编辑框1.内容 = “”
.判断开始 (大小排列 = 真)
数组排序 (分割的数字, 假) ' 排序
.默认
数组排序 (分割的数字, )
.判断结束
.计次循环首 (取数组成员数 (分割的数字), 计次)
编辑框1.内容 = 编辑框1.内容 + 到文本 (分割的数字 [计次]) ' 显示
.计次循环尾 ()
.子程序 _从大到小_被单击
整数排列 (真)
.子程序 _从小到大_被单击
整数排列 (假)本回答被网友采纳