代码和程序运行界面如下所示,请在划线处填入合适的代码,并且在加框处代码有错误,请改正:
Const n = 1000
Dim mw(0 To 1000) As String '存放转换后密文的字符
Function zh(s As String) As String '按字母表后移3位进行转换
Dim p As Integer,flag As Boolean
If s >= "a" And s <= "z" Then
p = Asc(s) - 96: flag = True
Else
p = Asc(s) - 64: flag = False
End If
①
If flag Then zh = Chr(p + 96) Else zh = Chr(p + 64)
End Function
Private Sub Command1_Click()
Dim i As Integer, j As Integer, t As String, a As Integer
Dim tmp As String, k As Integer, s As String
s = Text1.Text
k = 1: a = 1
For i = 1 To Len(s)
t = Mid(s, i, 1)
If t = " " Then
k = 0: mw(i) = t
Else
If k < 3 Then
mw(i + a) = t: a = -a
Else
tmp = zh(t)
j = i
Do While
②
j = j + 1
Loop
mw(j) = tmp
③
End If
End If
k = k + 1
Next i
For i = 1 To Len(s)
Text2.Text = Text2.Text + mw(i)
Next i
End Sub
请回答下列问题:
① ② ③