实验五 数组应用程序设计(3个学时)
一 、实验目的
1. 掌握数组的声明、数组元素的引用。 2. 掌握静态数组和动态数组的使用差别。 3. 应用数组解决与数组有关的常用算法问题。 4. 学会使用控件数组。
二 、实验内容
1. 设计一个窗体,在窗体的单击事件中编程实现:
输出5行5列方阵,使对角线上元素为1,其他元素为0。
1)代码设计如下
Private Sub Form_Click()
Dim a(1 To 5, 1 To 5) As Single For i = 1 To 5 For j = 1 To 5 If i = j Then a(i, j) = 1 Else
a(i, j) = 0 End If Next j Next i
For i = 1 To 5 For j = 1 To 5
CurrentX = j * 300 CurrentY = i * 300 Print a(i, j) Next j Next i End Sub
2)将运行结果的界面截下来粘贴在下面:
3)调试过程记录(错误情况及改正方法) 一开始没有写CurrentX = j * 300 CurrentY = i * 300 结果整个在第一列输出了
改正:添加CurrentX = j * 300 CurrentY = i * 300
2. 设有一个6×6的方阵,其中的元素是随机产生的10 - 99 之间的两位数. 分别求出主对角线和次对角线上元素之和,以及方阵中最小的元素的位置和值. 要求:
程序运行后,单击“产生”按钮时,输出方阵。单击“计算”按钮时,输出对角线元素之和,以及最小元素的值与位置。
1) 代码设计如下
Dim A(1 To 6, 1 To 6) As Single Private Sub Command1_Click() For i = 1 To 6 For j = 1 To 6 Randomize
A(i, j) = Int(99 * Rnd + 1) Next j Next i
For i = 1 To 6 For j = 1 To 6
CurrentX = j * 300
CurrentY = i * 300 Print A(i, j) Next j Next i End Sub
Private Sub Command2_Click()
Dim b As Single, c As Single, d As Single b = A(1, 1) For i = 1 To 6 For j = 1 To 6 If b > A(i, j) Then b = A(i, j)
Text5.Text = (\ End If If i = j Then c = c + A(i, j) End If
If i + j = 6 Then d = d + A(i, j) End If Next j Next i
Text2.Text = c Text3.Text = d Text4.Text = b End Sub
2)将运行结果的界面截下来粘贴在下面: