姓名:杨健专业:电气工程及其自动化 学号:15050341036 求出二维数组中m*n的鞍点
一、实验目的:
1.掌握数组的声明和数组元素的引用
2.掌握定长数组和动态数组的使用
3.掌握数组的基本操作算法
4.掌握过程的定义和调用
二、实验内容
找一个n*m的二维数组的“鞍点”。“鞍点”是指它在本行中数值最大,在本列中数值最小。也可能在一个数组中找不到鞍点。输出鞍点的行、列号,如无鞍点则输出“无鞍点”。
三、实验步骤
打开VB,在左侧选中commondbutton键,在右侧空白区域选中,出现commond1钮,双击它,在其中输入以下内容
Option Base 1
Private Sub form_Click()
Cls
Dim a() As Integer, i As Integer, j As Integer
Dim maxvr As Integer, col As Integer, find As Boolean
n = InputBox("请输入矩阵行数:")
m = InputBox("请输入矩阵列数:")
ReDim a(n, m)
Print n &"*"& m &"矩阵"
For i = 1 To n
For j = 1 To m
a(i, j) = Int(Rnd * 9) + 1
Print a(i, j);
Next j
Next i
For i = 1 To n
maxvr = a(i, 1): col = 1
For j = 2 To m
If maxvr < a(i, j) Then
maxvr = a(i, j): col = j
End If
Next j
For j = 1 To n
If maxvr > a(j, col) Then Exit For
Next j
If j > n Then
Print "存在鞍点a("& i &","& col &")="& a(i, col)
find = True
End If
Next i
If Not find Then Print "鞍点元素不存在"
End Sub
四、实验感想
1、在语句开头需加“cls”
原因:结果有鞍点的概率较低,多鞍几次按钮才可能出现一次有鞍点的情况。