组卷网 > 高中信息技术综合库 > 算法理论 > 算法实例的程序实现 > 查找算法及程序实现
题型:选择题 难度:0.4 引用次数:37 题号:10987316
某对分查找算法的 VB 程序段如下:
n   = 0: i = 1: j = 6
Key = Val(Text1.Text)
Do While i <= j
       m=(i+j)\2
       n=n+1
       If Key = d(m) Then Exit Do
       If Key < d(m) Then j = m - 1
       Else i= m + 1
Loop
If i <= j Then s = m – n
Else   s = n
数组 d(1)到 d(6)的值依次为“4,6,9,13,20,25”,输入某个 Key 值后,运行该程序段后,变量 s 结果为 3,则 输入 key 的值不可能是(     
A.25B.20C.5D.3
【知识点】 查找算法及程序实现

相似题推荐

选择题 | 较难 (0.4)
【推荐1】某对分查找算法的VB程序段如下:
Dim a(l to 6)As Integer
i=1: j=6: n=0
key= Val(Textl. Text)
Do While i<=j

n=n+1

m=(i+j)\2

If key=a(m) Then Exit Do             'Exit do为退出do循环

If key<a(m) Then

j=m-1

Else

i=m+1


LOOP
数组元素a(1)到a(6)的值依次为“1921,1927,1949,1998,2008,2019”。在文本框Text1中输入“1998”后运行该程序,则以上程序段运行结束后,下列说法正确的是(       
A.变量i的值为3
B.变量j的值为5
C.变量m的值为3
D.变量n的值为3
2020-03-30更新 | 34次组卷
选择题 | 较难 (0.4)
【推荐2】有如下程序段:
n=0:i=1:j=6
key=Val(Text l. Text)
Do While i<=j

m=(i+j)\2

n=n+1

If key=d(m)   Then Exit Do

If key>d(m)   Then j=m-1   Else   i=m+1


Loop
d(1)到d(6)的值依次为“88,77,53,47,39,28”,并且输入key值为40,下列说法正确的是(       
A.变量n中记录了查找次数,终值为3
B.数组d中的元素若无序,也可用此程序段进行查找某个数字
C.无论数组d中是否出现与key值相等的元素,循环结束后“i>j”一定成立
D.该程序段结束后,变量m的终值为5
2020-03-30更新 | 34次组卷
选择题 | 较难 (0.4)
名校
【推荐3】【加试题】已知一无序数组a中的元素为"90,15,40,72,65,32,81,6",通过引入数组b存储数组a元素按升序排列时的下标,b数组元素为"8,2,6,3,5,4,7,1",使得a(b(1))≤a(b(2)) ≤a(b(3))……≤a(b(n)),从而对a数组中的数据进行对分查找。部分程序如下:

当文本框Text1中输入的值为32时,程序运行结束后变量c的值为
A.1B.2C.3D.4
2019-03-18更新 | 31次组卷
共计 平均难度:一般