猿问

这是一个排序用的,为什么两个输出没有区别呢?

Dim D As Variant
Dim E() As Integer

Do While A1 <> 0
A1 = 0
For i2 = 0 To UBound(D)
If D(i2) > A1 Then
A1 = D(i2)  
End If 'D(i2) > A1
Next 'i2 = 0

ReDim Preserve E(i3) As Integer  
E(i3) = A1
i3 = i3 + 1

For i2 = 0 To UBound(D)  
If D(i2) = A1 Then
D(i2) = 0
End If 'D(i2) > A1
Next 'i2 = 0
Loop

'这是一个排序用的,把数组元素(D)大到小排序去重复的复制到另一个(E)。
'问,为什么do while ...Loop 与 while ....wend 的输出没有区别?

炎炎设计
浏览 93回答 2
2回答

素胚勾勒不出你

do while ... loop和while ... wend没区别,完全一样,先判断条件再运行循环体。do ... loop while就不一样了,先运行再判断

精慕HU

while.条件..wend的流程->条件满足开始循环->(Yes)执行语句->返回“开始循环”->(No)执行后续内容do..条件.loop流程开始循环->执行语句->条件不满足时候程序停止
随时随地看视频慕课网APP
我要回答