早教吧作业答案频道 -->其他-->
vb利用数组排序利用数组排序。按“生成随机数”按钮,在第一个文本框中生成10个10~99之间的随机数,然后按“按大小排序”按钮,将这10个数按从大到小的顺序排列放在第二个文本框中
题目详情
vb 利用数组排序
利用数组排序。按“生成随机数”按钮,在第一个文本框中生成10个10~99之间的随机数,然后按“按大小排序”按钮,将这10个数按从大到小的顺序排列放在第二个文本框中。
(1)两个文本框(Text)、两个按钮(Command)
(2)用比较法完成排序
(3)编辑代码就好
利用数组排序。按“生成随机数”按钮,在第一个文本框中生成10个10~99之间的随机数,然后按“按大小排序”按钮,将这10个数按从大到小的顺序排列放在第二个文本框中。
(1)两个文本框(Text)、两个按钮(Command)
(2)用比较法完成排序
(3)编辑代码就好
▼优质解答
答案和解析
Private Sub Command1_Click()
Text1.Text = ""
Dim i As Integer
For i = 1 To 10
Randomize
Text1.Text = Text1.Text & IIf(Text1.Text = "", "", ",") & Int(Rnd(i) * 89) + 10
Next i
End Sub
Private Sub Command2_Click()
Text2.Text = ""
Dim tmpGrp() As String
tmpGrp = Split(Text1.Text, ",")
ResetOrder tmpGrp, 1
Dim i As Integer
For i = 1 To UBound(tmpGrp)
Text2.Text = Text2.Text & IIf(Text2.Text = "", "", ",") & tmpGrp(i)
Next i
End Sub
Function ResetOrder(ByRef tmpGrp() As String, ByVal sIndex As Integer) As String
'对所有数字排序
Dim i, j As Integer
Dim tmpN As Integer
For i = UBound(tmpGrp) To sIndex Step -1
If Val(tmpGrp(i)) > Val(tmpGrp(i - 1)) Then
'前一个比后一个小,则互换
tmpN = tmpGrp(i)
tmpGrp(i) = tmpGrp(i - 1)
tmpGrp(i - 1) = tmpN
End If
Next i
If sIndex < UBound(tmpGrp) Then
ResetOrder tmpGrp, sIndex + 1
End If
End Function
Text1.Text = ""
Dim i As Integer
For i = 1 To 10
Randomize
Text1.Text = Text1.Text & IIf(Text1.Text = "", "", ",") & Int(Rnd(i) * 89) + 10
Next i
End Sub
Private Sub Command2_Click()
Text2.Text = ""
Dim tmpGrp() As String
tmpGrp = Split(Text1.Text, ",")
ResetOrder tmpGrp, 1
Dim i As Integer
For i = 1 To UBound(tmpGrp)
Text2.Text = Text2.Text & IIf(Text2.Text = "", "", ",") & tmpGrp(i)
Next i
End Sub
Function ResetOrder(ByRef tmpGrp() As String, ByVal sIndex As Integer) As String
'对所有数字排序
Dim i, j As Integer
Dim tmpN As Integer
For i = UBound(tmpGrp) To sIndex Step -1
If Val(tmpGrp(i)) > Val(tmpGrp(i - 1)) Then
'前一个比后一个小,则互换
tmpN = tmpGrp(i)
tmpGrp(i) = tmpGrp(i - 1)
tmpGrp(i - 1) = tmpN
End If
Next i
If sIndex < UBound(tmpGrp) Then
ResetOrder tmpGrp, sIndex + 1
End If
End Function
看了 vb利用数组排序利用数组排序...的网友还看了以下:
桌子上有8张卡片,分别写着1~8.如果摸到奇数小明赢,摸到偶数小青赢.下面的说法正确的是()A.小 2020-04-09 …
去掉小数点后面的0,小数的大小比原来()A.大B.小C.不变D.无法确定 2020-04-11 …
若坡度从10°增大到15°,则a点的数值将A.增大 B.减小 C.先减小后增大 D.先增大后减小 2020-05-24 …
在观察凸透镜成像实验中,把物体从距凸透镜2倍焦距之外,逐渐向凸透镜靠拢的过程中,像的大小将()A. 2020-06-22 …
在观察凸透镜成像实验中,把物体从距凸透镜2倍焦距之外,逐渐向凸透镜靠拢的过程中,像的大小将()A. 2020-06-30 …
当我们走进和走出电影院时,瞳孔的变化是()A.有大变小,由小变大B.由小变大,由大变小C.由小变大 2020-08-04 …
若图示日晷仪由天津移至上海使用时,晷盘与地面的夹角应该()A.增大B.减小C.不变D.按日期作调整 2020-11-06 …
若坡度从10°增大到15°,则a点的数值将()A.增大B.减小C.先减小再增大D.先增大后减小 2020-12-19 …
我们进入中学要面对各种新的校规校纪,那我们应该()A.不必理会,不管它B.按小学的校规校纪办C.按高 2021-01-12 …
一辆小汽车在平直公路上行驶,下列说法正确的是()A.小汽车的速度越大,加速度也一定越大B.小汽车的速 2021-01-29 …