回 帖 发 新 帖 刷新版面

主题:谁帮忙写个小程序呀,本人只会C,不会VFP

要求使用者输入N个需要排序的数,然后使用者一次输入N个数,最后一次输出原始输入数列、从小到大排列后的数列、从大到小排列后的数列、两端大中间小排列后的数列

回复列表 (共2个回复)

沙发

不会VFP,大家帮帮忙吧,回帖的都加分,谢谢了!

板凳

存入数组,使用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 给其它参数用来省略其它参数。

我来回复

您尚未登录,请登录后再回复。点此登录或注册