数组d(1)~d(100)中存储某班级50位同学的语文和数学成绩,奇数位存储语文成绩,偶数位存储对应该同学的数学成绩。该数组已经按照两科总成绩升序排序。依据对分查找思想:设计一个在数组a中查找总成绩Key的程序,如果查找成功输出语文成绩在数组中的位置。实现该功能的VB程序段如下:
Key=Val(Text1. Text)
i=1:j=100
Do While i<=j
If i> i Then Text2. Text="没有找到!" Else Text2. Text=Str(m)
实现该功能,则上述程序段划线处的表达式分别为( ).
Key=Val(Text1. Text)
i=1:j=100
Do While i<=j
m=(i+j)\2
If ① Then m= m-1
Sum= ②
If Key= Sum Then Exit Do 'Exit Do表示退出循环
If ③ Then
i=m+2
Else
j=m-2
End If
LoopIf i> i Then Text2. Text="没有找到!" Else Text2. Text=Str(m)
实现该功能,则上述程序段划线处的表达式分别为( ).
A.①m Mod 2=1 ②d(m)+d(m-1) ③Key<Sum |
B.①m Mod 2=1 ②d(m)+d(m+1) ③Key>Sum |
C.①m Mod 2=0 ②d(m)+d(m-1) ③Key>Sum |
D.①m Mod 2=0 ②d(m)+d(m+1) ③Key>Sum |
更新时间:2020-04-11 17:39:25
|
【知识点】 VB程序的调试
相似题推荐
选择题
|
较难
(0.4)
【推荐1】某对分查找算法的VB程序段如下:
i=1:j=5:k=0:s=""
key=Int(Rnd * 100)
Do While i<=j
Loop
Text1.Text=s
数组元素a(1)到a(5)的值依次为“6,18,25,37,49”。若该程序段执行后,k的值为3,则key的值不可能为( )
i=1:j=5:k=0:s=""
key=Int(Rnd * 100)
Do While i<=j
k=k+1
m=(i+j)\2
s=s+Str(a(i))
If key=a(m)Then
Exit Do 'Exit Do 表示退出循环
ElseIf key<a(m)Then
j=m-1
Else
i=m+1
End If
Loop
Text1.Text=s
数组元素a(1)到a(5)的值依次为“6,18,25,37,49”。若该程序段执行后,k的值为3,则key的值不可能为( )
A.4 | B.18 | C.47 | D.55 |
您最近一年使用:0次
选择题
|
较难
(0.4)
名校
【推荐2】有VB程序段如下:
Randomize
For i = 1 To 6
a(i) = Int(Rnd * 20) + 1
If a(i) Mod 2 = i Mod 2 Then
a(i) = a(i) - 1
Else
a(i) = a(i) + 2
执行该程序段后,a(1)~ a(6)各元素可能的是( )
Randomize
For i = 1 To 6
a(i) = Int(Rnd * 20) + 1
If a(i) Mod 2 = i Mod 2 Then
a(i) = a(i) - 1
Else
a(i) = a(i) + 2
End If
Next i执行该程序段后,a(1)~ a(6)各元素可能的是( )
A.13,2,7,12,5,18 | B.22,7,0,15,4,19 |
C.20,9,18,23,4,7 | D.6,0,4,21,18,17 |
您最近一年使用:0次