'数组f( )到f( )赋初值为0,代码略
n = Val (Text1. Text)
For key=1 To n
i=1:j=n:c=0
Do While i<=j
m=(i+j)\2
c=c+1
If key=m Then
f(c) = f(c) + 1: Exit Do
ElseIf key > m Then
i=m+1
Else
j=m-1
End If
Loop
Next key
在文本框Text1中输入5,执行该程序段后,f(1)到f(4)各元素值可能的是( )
temp=Val(Text1.Text)
If temp<a(n) then
a(n+1)=temp
Else
L=1:R=n
Do while L<=R
m=(L+R)2
If a(m)<temp then R=m-1 else L=m+1
Loop
For j= ①
a(j+1)=a(j)
Next j
②
End If
则横线①②上的语句分别是:( )
Dim bj(1 To 100) As Integer, xm(1 To 100) As String, score(0 To 100) As Integer
Dim flag(1 To 100) As Boolean, p(1 To 100) As Integer, num As Integer, cla As Integer
Private Sub Form_ Load( )
'加载学生报名数据班级、姓名、分数,分别存储到数组bj,xm,score,并在列表框List1中输出,班级总数为cla个,报名总人数为num,代码略
End Sub
Private Sub Command1_ Click()
Dim i, j, n As Integer
Dim b(1 To 15) As Integer
n = Val(Text1.Text)
For i=1 To cla '每班1人录用
Max= 0
For j= 1 To num
If Then Max = score():t= j
Next j
flag(t) = True
Next i
t= 1
For i= 1 To num
If Not flag(i) Then p(t)= i:t=t+ 1
Next i
For i=
For j=1 To 2 Step-1
If score(p(- 1)) < score(p(j)) Then t=p(j): p(j)= p(- 1): p(j-1)=t
Next j
Next i
For i=1 To n-cla '剩余人数录取
flag(p(i)) = True
Next i
For i= 1 To num
If Then List2.AddItem Str(bj(i)) + xm(i) + Str(score(i))
Next i
End Sub
s=Text1.Text: h=1: Max=0
For i=2 to Len(s)
If ① Then
②
If h>Max then Max=h
Else
③
Endif
Next i
Label1.Caption= str(Max)
划线处可选代码为:①h=1②h=0③h=h+1④Mid(s,i,1)=Mid(,j+1,1)⑤Mid(,1)=Mid(s,i-1,1),则①②③处语句依次为: ( )
Key = Val(Text1.Text)
i= l:j= Key
Do While i<= j
m=(i+j)\2 '①
If Key=m*m Then Exit Do 'Exit Do表示退出循环
If Key>m* m Then i=m+ 1 Else j=m- 1
Loop
If i> j Then
Label1.Caption= Key & "不是完全平方数"
Else
Label1.Caption= Key & "是完全平方数"
End If
运行该程序段,在文本框Text1中输入15,运行后①处语句的执行次数是( )
Key = Val(Text1.Text)
c=0:i=1:j=10
Do While i<=j
m=(i+j)\2
c=c+1
If key >= a(m) Then i=m+1 Else j=m-1
Loop
Text2.Text = Str(c)
数组a(1)到a(10)的值依次为“10,15,15,25,27,28,33,35,36,56”,执行该程序段后,文本框Text2中显示的值为3,则key值可能是( )
i =1:j= 8:n= 0:key= 83
Do While i<=j
n=n+1
m=(i+j)\2
If key > a(2 * m) Then j=m-1 Else i=m+1
Loop
Text1。Text = Str(a(2 * j - 1))
数组元素a(1)到a(16)的值依次为“6,90,3,85,5,83,2,83,4,83,8,80,7,77,1,70”,奇数位存储序号,偶数位存储成绩。执行该程序段后,下列说法正确的是( )
i =1:j=10: key = 88
Do While I <=j
m=(i+j)\2
If key < a(m) Then j = m-1 Else i=m+1
Loop
数组元素a(1)到a(10)的值依次为“12,15,18,20,25,39,47,88,90,99”,经过上述代码查找后,下列表达式正确的是( )
i=1: j=6: n=0: f= False
key= Val(Text1. Text)
Do While i<=j and Not f
n=n+1
m= Fix((i+j)/2)
If key=a(m) then f= True
If key<a(m) then j=m-1 Else i=m+1
Loop
数组元素a(1)到a(6)的值依次为“12, 19,27,31,46,55”。若在文本框Text1中输入“31”,则以上程序段运行结束后,下列说法不正确的是( )
i= 1:j= n '数组a下标从1到n为止
Key = Val(Text1. Text)
Do While i<=j
m=(i+j)\2
If a(m) = Key Then Exit Do
If a(i) < a(m) Then
If Then j=m-1 Else i=m+1
Else
If Key> a(m) And Key< = a(j) Then i=m+1 Else j=m-1
End If
Loop
If i <= j Then Text2. Text =“查找成功”
Else Text2. Text =“查找失败”
要使程序实现对分查找过程,则方框中的语句是( )