编写VB程序实现以下功能:在文本框Text1中输入一个十进制正整数,单击“计算”按钮Command1后,将该正整数转换为二进制数,最后在文本框Text2中输出该二进制数中连续“0”或“1”的最长个数情况。
如:输入十进制数35,将其转换为二进制数为100011,其中最长连续数字是3个“0”。程序运行界面如图所示。
(1)
实现上述功能的VB程序如下,请在划线处填入合适的代码。
Private Sub Command1_Click()
Dim n As Integer, i As Integer, j As Integer, m As Integer
Dim s As String, ch As String, ch1 As String, ch2 As String
n = Val (Text1. Text)
Do While n<>0
s=CStr(n Mod 2)+s ‘CStr将数字转化为字符串,但不会有前导空格
Loop
ch1 = Mid(s, 1, 1): ch = ch1
i=2:j=1:m=0
For i=2 To Len(s)
ch2 = Mid(s, i, 1)
If Then
If i-j> m Then
m=i-j
ch = ch1
End If
ch1 = ch2
End If
Next i
Text2. Text = Str(m) & “个”& ch
End Sub
(2)
如果将程序中加提处的代码去掉,在文本框Text1中输入15,单击Command1后在标签Label2中显示的内容是。
答案: 【1】n=n\2【2】ch1 <> ch2【3】j=i
【1】0个1