你这个过程要是这么写,那完全用不着参数,n也是全局变量呢,用得着你传参么……而且说好的是排序,怎么连产生原始数据的工作也要做啊
![[滑稽]](/static/emoticons/u6ed1u7a3d.png)
要避免数据多了会产生重复的问题,需要在产生数据的循环当中加上这个功能,比如改成这样:
ReDim a(n) '这个ReDim没有写在循环内的必要,移到前面来
For i = 1 To n
a(i) = Int(Rnd * 100 + 1)
For j = 1 To i - 1 '循环依次与前面的数比较
If a(i) = a(j) Then '如果出现了重复
i = i - 1 '则这个数作废,回退一位重来一次
Exit For '及时退出内层循环,否则当j循环到等于i时(i已经减1了,但j还会循环到原来的i-1,也就是现在的i),a(i)=a(j)条件必然成立,会导致i额外减1
End If
Next j
Next i