题型:综合题 题类:常考题 难易度:困难
浙江省“七彩阳光”联盟2017-2018学年高三上学期信息技术期中联考试卷
若存在和为key的数对,输出该数对包含的两个整数,小的在前,大的在后;
若存在多个数对满足条件,则输出最先找到的数对;
若找不到符合要求的数对,则输出“没有符合条件的数对”。
根据上述算法,小黄编写了一个VB程序,功能如下:程序加载时,自动生成50个互异的、按升序排列的随机正整数,依次存入数组a中,并显示在列表框List1中。在文本框Text1中输入key的值,单击“查找”按钮Command1,查找结果在列表框List2中输出。程序运行界面如图所示。
Dim a(1 To 50)As Integer
Const n As Integer=50
Private sub form_load()
‘生成50个互异的、被升序排序的随机正整数,依次存人数组a中
‘代码略
End Sub
Private Sub Command1=_Click()
Dim M As Integer,L As Integer,R As Integer
Dim key As Integer,flag As Boolean
flag=false:key=Val(Text1.Text)
For i=1 To n-1
L=i+1:R=n
Do While ①
M= ②
If a(i)+a(M)<key Then
L=M+1
Else lf a(i)+a(M):>key Then
R=M-1
Else
List2.AddItem Str(a(i))+””+ ③
flag=True
End If
Loop
If Not flag Then List2.AddItem”没有符合条件的数对!”
End Sub
① ② ③
试题篮