vb:输出矩阵中的最大值

[复制链接]
查看11 | 回复1 | 2009-4-27 18:35:06 | 显示全部楼层 |阅读模式
我要算矩阵里的最大值,但一直是0,帮我看看哪错了
Public Class Form1

Dim a%(,)

Private Sub TextBox1_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles TextBox1.Click

Dim i, j, m, n, max, maxi, maxj As Integer

m = Val(InputBox("input row m")) - 1

n = Val(InputBox("input col n")) - 1

For i = 0 To m

For j = 0 To n



ReDim a(i, j)
If max < a(i, j) Then

max = a(i, j)

maxi = i

maxj = j

End If

a(i, j) = Val(InputBox("input data"))

TextBox1.Text &= a(i, j) & Space(6 - Len(Trim(a(i, j))))

Next

TextBox1.Text &= vbCrLf

Next

TextBox1.Text &= "max is " & max & "is in" & maxi + 1 & "row" & maxj + 1 & "col" & vbCrLf

End Sub

回复

使用道具 举报

千问 | 2009-4-27 18:35:06 | 显示全部楼层
每次执行 ReDim 语句时,当前存储在数组中的值都会全部丢失。Visual Basi 重新将数组元素的值置为 Empty(对 Variant 数组)、置为 0(对 Numeric 数组)、置为 零长度字符串(对 String 数组)或者置为 Nothing(对于对象的数组)。在用 Preserve 关键字时,只能改变多维数组中最后一维的上界;如果改变了其它维或最后一维的下界,那么运行时就会出错。所以可这样编程:ReDim Preserve Matrix (10, UBound (Matrix, 2) + 1)而不可这样编程:ReDim Preserve Matrix (UBound (Matrix, 1) + 1, 1...
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

主题

0

回帖

4882万

积分

论坛元老

Rank: 8Rank: 8

积分
48824836
热门排行