题号:3395839题型:操作题难易度:一般
编写VB程序,实现如下功能:在文本框Text1中输入一个整数,单击“查找删除”按钮Command1,采用对分查找法在数组A(从小到大排列,并显示在标签Label1中)中查找该数。若找到,则从数组A中删除该数(该数后面的数组元素都前移一位),并在标签Label2中显示删除后的结果(运行效果如图所示);否则,在标签Label2中显示“该数没有找到”。

实现上述功能的VB代码如下,但加框处代码有错,请改正。
Dim A(1 To 10) As Integer ’用于保存10个按从小到大顺序排列的整数
’Form_Load事件过程产生10个整数,按升序保存在数组A中,并在标签Label1中显示Private Sub Form_Load()
’代码略
End Sub
Private Sub Command1_Click()
Dim i As Integer,j As Integer,m As Integer,k As Integer
Dim x As Integer,f As Boolean  ’变量f用于标记是否在数组中找到x
x=Val(Text1.Text)
i=1:j=10
f=False
Do While(i<=j)And (f=False)
m=Int((i+j)/2)
If A(m)=x Then f=True
If Then i=m+1 Else j=m-1’(1)
Loop
If f=True Then
For k=m To 9
’(2)
Next k
Label2.Caption=“”
For k=1 To 9
Label2.Caption=Label2.Caption+Str(A(k))+“”
Next k
Else
Label2.Caption=“该数没有找到”
End If
End Sub
+错题本:0
相关推荐
题号:3395845题型:填空题难易度:一般
在数组元素a(1)到a(5)中查找键值为key的数,其查找算法的VB程序段如下:
Dim a(1 To 5) As Integer
Dim Key As Integer
Private Sub Command1_Click()
t=0
For i=1 To 5
If ________ Then
t=i
Exit For ’②
End If
Next i
Print t
End Sub
Private Sub Form_Load()
’此过程用于对数组a和查找键Key进行赋初值,代码略
End Sub
(1)该程序段中所用的查找算法是_____________________________________。
(2)在程序①划线处,填入适当的语句或表达式,把程序补充完整:程序中①划线处应填入_____________________________________________。
当数组元素a(1)到a(5)中存储的数据为(2,5,1,9,5),查找键Key为5时:
(3)该程序运行结束,t的值是_____________________________。
(4)如果将②所标记的Exit For语句删除,该程序运行结束时,t的值是________。
+错题本:0
题号:3453099题型:填空题难易度:一般
用VB设计查询并统计某公司的销售数据。实现如下功能:
①将所有员工的姓名和销售量存储到数组xm和xse中;
②对销售量数组进行求和,并输出该地区平均销售量(保留整数);
③根据输入“销售排名前几位”筛选出排名前几位销售人员的数据。
程序运行界面如图所示。

(1)下列程序对员工的销售额进行排序的主要算法属于         (选填:解析算法/枚举算法/冒泡排序算法/选择排序算法)
(2)实现上述功能的VB程序如下。请在划线处填入合适的代码。
Dim xse(1 To 3000) As Long '存储销售员工的销售量,最大处理个数为3000
Dim xm(1 To 3000) As String '存储销售员工的姓名
Dim mc(1 To 3000) As Integer  '存储销售员工的名次
Dim num As Integer  '当前员工总数
Private Sub Form_Load()
'将销售量、姓名数据存入xse和xm数组
'计算员工总数num
'代码略
End Sub
Private Sub Command1_Click()
Dim sum As Long
Dim i As Integer, flag As Integer
pm = Val(Text2.Text)
dq = Text1.Text
sum = 0
For i =" 1" To num
sum =" sum" + xse(i)
Next i
For i =" 1" To pm      '对员工销售量进行排序
For j =   ①  To  i + 1 Step -1
If xse(j - 1) < xse(j) Then
t =" xse(j" - 1): xse (j - 1) =" xse(j):" xse(j) = t
st =" xm(j" - 1): xm(j - 1) =" xm(j):" xm(j) = st
End If
Next j
Next i
mc(1) = 1
For i =" 2" To pm
If        ②      Then
mc(i) =" mc(i" - 1)
Else
mc(i) = i
End If
Next i
List1.Clear
List1.AddItem "排名" + "姓名" + "销售量"
For i =" 1" To pm
List1.AddItem Str(mc(i)) + "  " + xm(i) + "   " + Str(xse(i))
Next i
List1.AddItem dq + "平均销售额约为:" +        ③      
End Sub
+错题本:0
题号:3625549题型:选择题难易度:一般
数组a中存放了一批数据如下表,现采用对分查找方式在这批数据中查找“gou”,以下说法正确的是(   )。
a(1)
a(2)
a(3)
a(4)
a(5)
a(6)
a(7)
hou
ji
long
ma
niu
she
tu
A.依次被比较的数据是“ma”,“ji”,“hou”
B.依次被比较的数据是“ma”,“she”,“tu”
C.无法进行对分查找,因为这批数据还没排好序
D.无法进行查找操作,因为这批数据中没有“gou”
+错题本:0