haihong0721 发表于 2008-10-23 11:03:57

求求你门能给我 分析一下这个例子

#include<Array.au3>
Const $n = 11
Dim $RandomNumArray[$n]
Dim $Num, $i, $j, $Flag, $t
$i = 1
While $i < $n
      $Num = Random(1, 10, 1)
      $Flag = 0
      $j = 1
      While $j < $i
      If $Num = $RandomNumArray[$j] Then
                $Flag = 1
                ExitLoop
      Else
                $j = $j + 1
      EndIf
    WEnd
If $Flag = 0 Then
      $RandomNumArray[$i] = $Num
      $i = $i + 1
EndIf
WEnd
_ArrayDisplay($RandomNumArray, "随即不重复数组")
For $i = 0 To $n - 2
      For $j = $i + 1 To $n - 1
                If $RandomNumArray[$j] < $RandomNumArray[$i] Then
                        $t = $RandomNumArray[$i]
                        $RandomNumArray[$i] = $RandomNumArray[$j]
                        $RandomNumArray[$j] = $t
                EndIf
      Next
Next
_ArrayDisplay($RandomNumArray, "拍序后的随即不重复数组")

gzken 发表于 2008-10-23 11:19:14

问题是你哪里不明白呀?

这段代码的思路:
1.生成一个1到10中的随机数
2.检查这个数是否已在数组中, 是的话再重新生成随机数, 否则将这个数添加到数组中
3.至于排序用的是冒泡排序法
页: [1]
查看完整版本: 求求你门能给我 分析一下这个例子