试题 试卷
题型:单选题 题类:常考题 难易度:普通
教科版高中信息技术选修一 对分查找变式
i=1:j=1000:flag=True:p=0
key=val(Text1.Text)
Do While i<=j And flag
m=(i+j)\2
p=p+1
if a(m)=key Then flag=False
if a(m)>key Then j=m-1 Then i=m+1
Loop
数组元素a(1)到a(1000)中存放着升序排列的数据。下列说法正确的是( )
i=1:j=8:s=" " ‘数组a下标为从1到8
key=Val(Text1.Text)
Do While i<=j
m=(i+j)\2
s=s+Str(m)
If a(m)=key Then Exit Do
If a(i)<a(m)Then
If key>=a(i)And key t<a(m)Then j=m-1Else i=m+1
Else
If key>a(m)And key<=a(j)Then i=m+1 Else j=m-1
End If
Text2.Text=s
数组元素a(1)至a(8)的数据分别为“3,4,5,6,7,8,1,2”,运行该程序段,若在文本框Text1中输入1,则在文本框Text2中显示( )
k=Val(Text1.Text)
i=1: j=6: Label1.Caption="": f=False
Do While i <=j And Not f
m=(i+j) \ 2
If a(m)=k Then f=True
If a(m) > a(i) Then
If a(i) <=k And k < a(m) Then j=m-1 Else i=i+1
If a(m) < k And k <=a(j) Then i=i+1 Else j=j-1
Label1.Caption=Label1.Caption+Str(a(m))
数组元素a(1)到a(6)的值依次为“58,66,72,24,35,40”,在文本框Text1中输入的值为35,执行该程序段,标签Label1中显示的值是( )
奇数阶幻方的构造是所有幻方中最简单的,可以按照如下规则来实现:
⑴将1放在第一行中间一列;(如图2)
⑵从2开始直到n*n为止,各数按下列规则存放:
假设当前要存放的数为k,则k存放在k-1)数的右上方并按照规则
①若(k-1)放在第1行且不是最后一列,则将k存放在n行,(k-1)所在列右侧;(如图3)
②若(k-1)放在第n列且不是第一行,则将k存放在第1列,k-1)的上1行;(如图4)
③若(k-1)即不在第1行也不在最后1列:
若(k-1)右上方有数,则将k放在(k-1)的下1行的同一列。(如图5)
若(k-1)右上方没有数,则将k放在(k-1)的右上方;(如图6)
④若(k-1)在第1行第n列,将k填在(k-1)的正下方(如图7)
key = Val (Text1. Text)
i =0:j=9:n=0
Do While i<= j
n=n+1
If key <= a(m) Then
j=m-1
i=m+1
s=i
Do While i<9 And a(i)= a (i+1)
i=i+1
Label2.Caption = Str(n) +“:”+ Str(i + 1-s)
数组元素a(0~9)的值依次为“3,4,7,8,8,8,8,9, 10,12”。在文本框Text1中输入“8”,点击“查找”按钮后,Labe12 中输出的结果是( )
试题篮