有如下 VB 程序段:Const n=10
Dim a(1 To n) As Integer
Dim mid As Integer,L As Integer,R As Integer Randomize a(1)=10
For i=2 To n
a(i)=a(i-1)+Int(Rnd*2)+1
Next i
c=0:L=1:R=n:flag=False:Key=11
Do While L<=R And Not flag
mid=Int((L+R)/2+0.5)
c=c+1
If a(mid)=Key
Then flag=True
ElseIf a(mid)>Key Then
R=mid-1
Else
L=mid+1
End If
Loop
执行该程序段后,变量c可能的值是( )
【考点】查找算法及其程序实现.
【答案】C
【解答】
【点评】
声明:本试题解析著作权属菁优网所有,未经书面同意,不得复制发布。
发布:2024/5/27 14:0:0组卷:1引用:2难度:0.4
相似题
-
1.某对分查找算法的VB程序段如下:
数组元素a(1)到a(10)的值依次为“12,15,18,20,25,39,47,88,90,99”,经过上述代码查找后,下列表达式正确的是( )发布:2024/12/20 16:0:2组卷:5引用:2难度:0.5 -
2.某数组d中的数据依次是[8,12,15,28,28,32,36,39],要查找某个元素是否在数组中,下列说法正确的是( )
发布:2024/12/20 0:0:1组卷:3引用:1难度:0.7 -
3.有如下对分查找VB程序段:
若数组元素a(1)~a(10)的值依次为“5,9,13,18,22,27,31,39,40,44”,运行程序后,文本
框Text2中显示的内容为3,则输入的key值不可能为( )发布:2024/12/20 20:0:2组卷:3引用:2难度:0.4