【例1】编写程序,利用二维数组在窗体上输出如图5x5矩阵,该矩阵两条对角线上的元素为1,其余元素为0(要求:数组的下标下界从1开始)
Option Base 1
Private Sub Form_Click()
Dim x(5, 5) As Integer
For i = 1 To 5
For j = 1 To 5
x(i, j) = 0
If i = j Or i + j = 6 Then x(i, j) = 1
Print x(i, j); \" \";
Next j
Next i
End Sub
【例2】编写程序,利用二维数组在窗体上输出如图7x7矩阵. 下界从1开始)
Option Base 1
Private Sub Form_Click()
Dim x(7, 7) As Integer
For i = 1 To 7
For j = 1 To 7
x(i, j) = 0
(要求:数组的下标
If i <= j And i + j <= 8 Then x(i, j) = 1
If i >= j And i + j >= 8 Then x(i, j) = 1
Print x(i, j); \" \";
Next j
Next i
End Sub
【例3】编程查找5×5整型数组中所有的在行上最大、在列上也最大的元素。
Private Sub Form_Click()
Dim a(1 To 5, 1 To 5) As Integer
Dim i%, j%, max%, col%, flag%
Print \"数组各元素的值为:\"
'产生并输出5x5矩阵
Randomize
For i = 1 To 5
For j = 1 To 5
a(i, j) = Int(Rnd * 100)
Print a(i, j),
Next j
Next i
'在此矩阵中逐行找最大值,并判断此最大值是否也是列上的最大值,是就输出.
For i = 1 To 5
max = a(i, 1): col = 1
For j = 1 To 5
If a(i, j) > max Then
max = a(i, j): col = j
End If
Next j
'上面一小段为找出此行的最大值,放在max,列号放在col中
'下面一段为判断第col列中是否有值大于max的值,如果没有max为行列都是最大值
flag = 0
For j = 1 To 5
If a(j, col) > max Then
flag = 1: Exit For
End If
Next j
If flag = 0 Then
Print \"a(\"; i; \是行最大列也最大\"
End If
Next i
End Sub
【例4】动态数组。编一个程序,显示有n个数的非波那契数序列
Private Sub Form_Click()
Dim x() As Double
Dim n%, i%
n = Val(InputBox(\"输入序列数\"))
ReDim x(n - 1)
x(0) = 1
x(1) = 1
For i = 2 To n - 1
x(i) = x(i - 1) + x(i - 2)
Next i
For i = 0 To n - 1
Print x(i),
If (i + 1) Mod 5 = 0 Then Print
Next i
End Sub
因篇幅问题不能全部显示,请点此查看更多更全内容
Copyright © 2019- efsc.cn 版权所有 赣ICP备2024042792号-1
违法及侵权请联系:TEL:199 1889 7713 E-MAIL:2724546146@qq.com
本站由北京市万商天勤律师事务所王兴未律师提供法律服务