7,762
社区成员
发帖
与我相关
我的任务
分享
dim a(0 to 99) as long '2位数不会大于99
dim i as long,idx as long
for i=0 to 4 '假设你文本框是控件数组index由0到4
a(val(text1(i)))=a(val(text1(i)))+1
next
idx=-1
for i=0 to ubound(a)
do while a(i)> 0 '可能会有重复的数字,所以用do
idx=idx+1
text2(idx)=i '把a(i)大于1的i写入text2
a(i)=a(i)-1
loop
next
dim a(0 to 99) as long '2位数不会大于99
dim i as long,idx as long
for i=0 to 4 '假设你文本框是控件数组index由0到4
a(val(text1(i)))=a(val(text1(i)))+1
next
idx=-1
for i=0 to ubound(a)
do while a(i)>0 '可能会有重复的数字,所以用do
idx=idx+1
text2(idx)=a(i) '把a(i)大于1的值写入text2
a(i)=a(i)-1
loop
next
Private Sub Form_Load()
'改进的冒泡
Dim A() As Variant, Temp As Long, I As Long
A = Array(12, 32, 99, 43, 66, 93, 82, 50, 77, 39, 64) '生成数列,自己换成TextBox控件
For I = 0 To UBound(A)
If I <> 0 Then
If A(I) < A(I - 1) Then
Temp = A(I)
A(I) = A(I - 1)
A(I - 1) = Temp
I = I - 2 '注意这一句
If I < 0 Then I = 0
End If
End If
Next
For I = 0 To UBound(A) '输出结果
Debug.Print A(I) & " ";
Next
End Sub