题库 高中信息

题干

小明设计了一个VB程序(界面如图所示),随机产生n(n<=100)个大于等于a(a<=100)且小于等于b(b<=100)的整数,并在列表框List1中降序显示。

实现上述功能的VB代码如下:
请在划线处填入合适代码。
Private Sub Command1_Click()
Dim a As Integer, b As Integer
Dim n As Integer, t As Integer
Dim m(1 To 100) As Integer
a = Val(Text1.Text)
b = Val(Text2.Text)
n = Val(Text3.Text)
If  a > b Then t =" a:" a =" b:" b = t
Randomize
①
For i =" 2" To n
m(i) =" Int(Rnd" * (b - a + 1)) + a
If m(i) > m(i - 1) Then
②
For j =" i" - 1 To 1 Step -1
If temp < m(j) Then Exit For
m(j + 1) = m(j)
Next j
③
End If
Next i
For i =" 1" To n
List1.AddItem Str(m(i))
Next i
End Sub
程序①处的代码是
程序②处的代码是
程序③处的代码是
上一题 下一题 0.99难度 填空题 更新时间:2017-03-01 05:08:44

答案(点此获取答案解析)

同类题1

(加试题)最大回文子串。回文字符串是具有回文特性的字符串:即该字符串从左向右读, 与从右向左读都一样.如:凤落梧桐梧落凤,abcba 等。“最大回文子串”是指一个字符串中长 度最大的回文字符串,其基本算法思想如下:
(1)每个回文都有一个“中心”,当回文字符数为奇数时,中间的那个字符就是回文中心;但是当回文的字符数为偶数时,回文的中心是最中间的那两个字符,且这两个字符相同。
(2)对任意一个字符或者相同的两个连续字符,我们都可以假设它为回文的“中心”,向它的 左右两边扩展出尽可能长的回文。对于每种假设,我们都能得到一个回文,而最长回文必定由 其中的某个假设中得到!
现编写一个 V
A.程序,在 Text1 中输入一串字符,单击“统计”按钮,在 Text2 中显示该字 符串中的最大的回文子串(长度相同时,输出最左边的子串)。请回答下列问题:
(1)当 Text1 中输入“123321344332423112113123”时,则输出的结果为_________。
(2)请在划线处填入合适的代码。
Dim n As Integer
Dim a(0 To 100) As String Private Sub Command1 Click() Dim s As String
Dim left As Integer, right As Integer, i As Integer
Dim max As Integer, m As Integer, b1 As Integer
'变量 b1 用于记录回文子串的左端起点 Text2.Text = ""
s = Text1.Text n = Len(s)
For i = 1 To n

a(i) = Mid(s, i, 1) Next i

max = 0: left = 0: right = 0
For i = 1 To n left = i
right = i
m = longest(left, right) If m > max Then
b1 = i - m \ 2 max = m
End If left = i
right = i + 1
If a(left) = a(right) Then
m = longest(left, right) + 1
If m > max Then
①________
max = m
End If
End If
Next i
For i = b1 To ②________

Text2.Text = Text2.Text + a(i) Next i

End Sub
Function longest(left As Integer, right As Integer) As Integer
Dim p As Integer p = 1
Do While left > 1 And right < n And ③________
left = left - 1 right = right + 1 p = p + 2
Loop
longest = p
End Function