编写VB程序,功能如下:在文本框Text1中输入n的值,单击“生成”按钮Command1,
生成网格和随机的挡板,并输出。然后单击“开始”按钮Command2,在文本框Text2中显示小球进入网格后的运动路径。程序中利用数组a存储网格的状态,其中“/”与“\”两种字符表示两种朝向的挡板。程序运行界面如图c所示。
图 c
请回答下列问题:
Dim n As Integer
Dim a(0 To 100) As String
Private Sub Command1_Click() '生成网格和挡板
n = Val(Text1.Text)
'生成 n*n 的网格和随机的挡板,并通过图形控件输出,代码略
End Sub
Private Sub Command2_Click()
Dim ans As String, pre As String
Dim cur As Integer
cur = 1: : ans = ""
Do While cur >= 1 And cur <= n * n
ans = ans + Str(cur) + "→"
If pre = "左" And a(cur) = "\" Or pre = "右" And a(cur) = "/" Then
cur = cur + n: pre = "上"
ElseIf Then
cur = cur - n: pre = "下"
ElseIf pre = "上" And a(cur) = "\" Or pre = "下" And a(cur) = "/" Then
If cur Mod n = 0 Then
Exit Do
Else
cur = cur + 1: pre = "左"
End If
ElseIf pre = "上" And a(cur) = "/" Or pre = "下" And a(cur) = "\" Then
If Then
Exit Do
Else
cur = cur - 1: pre = "右"
End If
End If
Loop
Text2.Text = ans + "离开"
End Sub