一个vb作业 不知道哪错了 谢谢

来源:百度知道 编辑:UC知道 时间:2024/06/15 18:23:10
Option Base 1
Dim i%, j%, k%, c%, x%, a%(6, 10), q(), b()
Private Sub Command1_Click()

For i = 1 To 6
For j = 1 To 10
x = Int(Rnd * 101 + 100)
a(i, j) = x
Picture1.Print a(i, j);
Next j
Picture1.Print
Next i

m = 0: n = 0
If a(i, j) Mod 2 = 0 Then
n = n + 1
q(n) = a(i, j)
Else
m = m + 1
b(m) = a(i, j)
End If
For i = 1 To n - 1
For j = i + 1 To n
If q(i) > q(j) Then
c = q(i): q(i) = q(j): q(j) = c
End If
Next j
Next i

j = 0
For i = 1 To m - 1
For j = i + 1 To m
If q(i) < q(j) Then
c = q(i): q(i) = q(j): q(j) = c
End If
Next j
Next i

For i = 1 To 10
Text1.Print q(n);
j = j + 1
If j = 10 Then j = 0: Text1.Print

Text2.Print b(m);

干什么用的?
整个程序都是错的。
For i = 1 To 6
For j = 1 To 10
x = Int(Rnd * 101 + 100)
a(i, j) = x
Picture1.Print a(i, j);
Next j
Picture1.Print
Next i
之后i=7,j=11
数组溢出

-----------------------
m = 0: n = 0
If a(i, j) Mod 2 = 0 Then
n = n + 1
q(n) = a(i, j)
Else
m = m + 1
b(m) = a(i, j)
End If
b数组根本没初始化就赋值,m
-------------------------------
For i = 1 To n - 1
For j = i + 1 To n
If q(i) > q(j) Then
c = q(i): q(i) = q(j): q(j) = c
End If
Next j
Next i
q数组也没初始化,就赋值

Dim i%, j%, k%, c%, x%, a%(6, 10), q(1 To 60) As Integer, b(1 To 60) As Integer
Private Sub Command1_Click()

For i = 1 To 6
For j = 1 To 10
x = Int(Rnd * 101 + 100)
a(i, j) = x
Picture1.Print a(i, j);
Next j
Picture1.Print
Next i

m = 0: n = 0
For i = 1 To 6
For j = 1 To 10
If a(i, j) Mod