主题:谁帮忙写个小程序呀,本人只会C,不会VFP
second_
[专家分:0] 发布于 2008-10-09 10:47:00
要求使用者输入N个需要排序的数,然后使用者一次输入N个数,最后一次输出原始输入数列、从小到大排列后的数列、从大到小排列后的数列、两端大中间小排列后的数列
回复列表 (共2个回复)
沙发
second_ [专家分:0] 发布于 2008-10-09 10:48:00
不会VFP,大家帮帮忙吧,回帖的都加分,谢谢了!
板凳
qd163 [专家分:230] 发布于 2008-10-09 12:16:00
存入数组,使用ASORT()函数。
asort()函数使用方法:
[b]ASORT( ) 函数[/b]
按升序或降序对数组中的元素排序。
ASORT(ArrayName [, nStartElement [, nNumberSorted [, nSortOrder [, nFlags]]])
参数
ArrayName
指定要排序的数组名称。
nStartElement
指定从第几个元素开始排序。如果忽略参数 nStartElement,则默认从数组的第一个元素开始排序。如果数组是一维的,函数从 nStartElement 开始排序。如果数组是二维的,则参数 nStartElement 既决定从第几行开始排序,又决定以每行中的第几列元素排序。 注意:
引用二维数组中的一个元素有两种方法。第一种为使用两个下标值指定元素在数组中行和列位置,另一种方法为使用元素编号。此函数和其他处理二维数组的函数都需要使用元素编号 (在 ASORT( ) 中为数值表达式 nStartElement 和 nNumberSorted )。使用 AELEMENT( ) 可以将数组的行、列下标值转换成元素的编号值。
nNumberSorted
指定一维数组中参与排序的元素个数,或二维数组中参与排序的行数。例如,如果数组是一维的,并且参数 nStartElement 为 2,这表明从数组的第二个元素开始排序。参数 nNumberSorted 为 3,表明有三个元素参与排序,即对第二、第三和第四个元素排序。如果参数为 -1 或忽略此参数,则从起始元素 nStartelement 到数组中的最后一个元素都参与排序。如果数组是二维的,nNumberSorted 指定从起始元素 nStartElement 所在行开始参与排序的行数。例如,如若参数 nStarElement 为 2 且参数 nNumberSorted 为 3,将对包含第二个数组元素的行和接下来的两行排序。如果 nNumbersorted 为 -1 或忽略此参数,从包含起始元素的行到数组的最后一行都参与排序。
nSort Order
指定数组元素的排序方向(升序或降序)。默认情况下,数组元素按升序排序;如果 nSortOrder 值为零或忽略此参数,数组中元素将按升序排序。如果 nSortOrder 值为 1 或任意非零值,数组元素按降序排序。
nFlags
S指定应用于 sort 函数的大小写敏感搜索条件。可用的值是 0 (默认) 和 1。ASORT() 使用当前比较序列 (参见SET COLLATE)来确定排序次序。特定的比较序列 (如 "GENERAL") 不区分大小写, 而且指定 nFlags = 0 将不会导致区分大小写的排序。nFlags 参数仅在当前比较序列是大小写敏感 (如 "MACHINE"), 而你想执行一个非大小写敏感排序才是有用的。在 nFlags 中指定的数值提供一个确定区分大小写排序的位值, 如下表所示:
nFlag 位 说明
0 000 大小写敏感排序
1 001 非大小写敏感排序
注意:
如果指定了 nFlags, 可以传递 -1 给其它参数用来省略其它参数。
我来回复