方格填数。在n个连续的方格内填写字母A或B但相邻两格内不能都填B。求所有可能的填写方案数。例如,n=3,可能的方案有AAA、AAB、ABA、BAA、BAB等5种
以下VB程序用于解决这个问题,在文本框Text1输入n的值,点击“求解”按钮 command1后,在列表框List1中输出所有方案。运行界面如下图所示:
提示:若用0代表A,用1代表B,那么每一种方案都对应一个n位的二进制数。

(1)要使command1按钮上显示的文本改为“求解”,可在其属性窗口中将_____(填属性名)属性的属性值改为“求解”。
实现上述功能的程序如下:
Private Sub Command1_Click ()
Dim n As Integer, m As Integer, k As Integer
Dim flag As **
Dim i As Integer, j As Integer
Dim a(1 To 1000) As Integer
①
List1. Clear '清空文本框list1
s = ""
For i =0 To ②
'每一种方案对应一个n位的二进制数,枚举i对应的方案是否符合要求
m =i
For j=1 To n
a(j)= m Mod 2
③ Next j
flag =True
For

If a(k-1)= a(k) And a(k)= 1 Then
flag = False
End IF
Next k
If flag Then
For k= 1 To n
If a (k) = 1 Then s = "B" + s Else s = "A" + s
Next k
List1. AddItem s
End If
s = ""
Next i
End Sub
(2)阅读代码,变量flag的数据类型应定义为_____
(3)加框处代码有错,请改正:__________
(4)请在划线处填入合适的代码:
①__________
②__________
③__________