生成一个二维数组A(3,4),编写程序找出其中的非零元素及所在行号和列号! (VB)
Option Explicit
Private Sub Command1_Click()
Dim i%, j%, A(3, 4) As Integer
Randomize
For i = 1 To 3
For j = 1 To 4
A(i, j) = Int(Rnd * 15)
Picture1.Print A(i, j);
Next j
Picture1.Print
Next i
For i = 1 To 3
For j = 1 To 4
If A(i, j) <> 0 Then List1.AddItem A(i, j) & Space(5) & i & Space(5) & j
Next j
Next i
End Sub
Option Explicit
Private Sub Command1_Click()
Dim i%, j%, A(3, 4) As Integer
Randomize
For i = 1 To 3
For j = 1 To 4
A(i, j) = Int(Rnd * 15)
Picture1.Print A(i, j);
Next j
Picture1.Print
Next i
For i = 1 To 3
For j = 1 To 4
If A(i, j) <> 0 Then List1.AddItem A(i, j) & Space(5) & i & Space(5) & j
Next j
Next i
End Sub
应该是这样吧!
Dim zero(3 * 4, 2) As Integer
num = 0
For j = 0 To 3
For i = 0 To 4
If (a(j, i) <> 0) Then
zero(num, 0) = j
zero(num, 1) = i
num = num + 1
End If
Next
Next
说明:zero(12,2)中就保存了a(3,4)中的非零元素的位置,如果a(1,2)不为零,而且是第一个不为0,那么zero(0,0)=1,zero(0,1)=2.
num变量中保存了非零元素的个数.
本人没用过VB,平时只用C++,凭感觉写了一下.希望正确吧.