为什么输出的是0,不是给数组赋过值了么

来源:百度知道 编辑:UC知道 时间:2024/05/29 22:46:33
Private Sub Command1_Click()
Randomize
Dim a(1 To 5, 1 To 5) As Integer, i%, j%, sum1%, sum2%, sum3%, sum22%, sum33%, sum222%, m%

Do While sum222 >= 5
sum222 = 0

For i = 1 To 4
For j = 1 To 4
a(i, j) = 1
Next j
Next i

Loop

For i = 1 To 4
For j = 1 To 4
Print a(i, j) & Space(2);
m = m + 1
If m Mod 4 = 0 Then Print
Next j
Next i
Print "--------------------"
End Sub
/////////////////////////////
For i = 1 To 4
For j = 1 To 4
a(i, j) = 1
Next j
Next i 这里不是给数组富过值了么

那语句虽然是赋值语句 但没执行过。
Do While sum222 >= 5 条件为真 则执行语句~为假则退出
sum222 = 0
由于你赋值为0 数组都没赋值

Private Sub Command1_Click()
Randomize
Dim a(1 To 5, 1 To 5) As Integer, i%, j%, sum1%, sum2%, sum3%, sum22%, sum33%, sum222%, m%
sum222 = 6
Do While sum222 >= 5
For i = 1 To 4
For j = 1 To 4
a(i, j) = 1
Next j
Next i
sum222 = 0
Loop
For i = 1 To 4
For j = 1 To 4
Print a(i, j) & Space(2);
m = m + 1
If m Mod 4 = 0 Then Print
Next j
Next i
Print "--------------------"
End Sub

Do While sum222 >= 5应该改为Do While sum222 < 5