要排序 数组中的 数字从大到小, 但是排序后 相同的数字 的时候 数据位置出错了 。。。
比如 第一个数据 数据内有 333 第二个数据 数据内也有 333 排序后 加回到一个数据的时候 他是显示 第一个数据 333 第一个数据333
详细如下
.版本 2
.支持库 spec
.子程序 _按钮1_被单击
排序1 (“数据1|数据2|数据3|数据4|123||数据1|数据2|数据3|数据4|456||数据1|数据2|数据3|数据4|789||数据1|数据2|数据3|数据4|111||数据1|数据2|数据3|数据4|222||数据1|数据2|数据3|数据4|333||”)
.子程序 排序1
.参数 要排序的内容, 文本型
.局部变量 分割, 文本型, , "0"
.局部变量 n, 整数型
.局部变量 i, 整数型
.局部变量 j, 整数型
.局部变量 最后一个数, 整数型, , "0"
.局部变量 临时数组, 整数型, , "0", 用来排序
.局部变量 结果数组, 文本型, , "0"
分割 = 分割文本 (要排序的内容, “||”, )
n = 取数组成员数 (分割)
重定义数组 (结果数组, 假, 0)
重定义数组 (最后一个数, 假, 0)
重定义数组 (临时数组, 假, 0)
.计次循环首 (n, i)
加入成员 (最后一个数, 到整数 (取文本右边 (分割 [i], 取文本长度 (分割 [i]) - 倒找文本 (分割 [i], “|”, , 假))))
加入成员 (临时数组, 到整数 (取文本右边 (分割 [i], 取文本长度 (分割 [i]) - 倒找文本 (分割 [i], “|”, , 假))))
.计次循环尾 ()
数组排序 (临时数组, 假)
.计次循环首 (n, i)
.计次循环首 (n, j)
.如果真 (最后一个数 [j] = 临时数组 [i]) ' 将分割到的数组按排好的顺序放到结果数组中
加入成员 (结果数组, 分割 [j])
调试输出 (结果数组 [i])
跳出循环 ()
.如果真结束
.计次循环尾 ()
.计次循环尾 ()
|