题目

小明需要根据订单的取件距离依次安排快递员取件。快递员出发后不能中途折返,但可以接更远距离的快递订单。当小明新接到一个取件订单,他会依次安排可以取件的快递员取件,若该订单距离小于所有已出发的快递员的最远距离,则安排新的快递员出发取件。编写VB程序,实现上述功能。程序运行时,在文本框Text1中输入订单距离(各数值之间用“,”隔开),单击“安排”按钮Command1后,在标签Label2中显示最后一件快递的收取情况。运行界面如图所示。 (1) 运行窗体中,具有Caption属性的对象共有类。 (2) 若快递订单的取件距离依次为“243,123,167,309,183,229,87,333,183”,则最后距离为183的订单由号快递员收取。 (3) 实现上述功能的VB程序如下,请在划线处填入合适的代码。 Dim dd(0 To 100) As Integer           '记录所有订单的取件距离 Dim fp(0 To 100) As Integer             '存储第x个快递员取件的最远距离 Dim xs(0 To 100) As String Private Sub Command1_Click()     Dim n As Integer,i As Integer,k As Integer,s As String     Dim left As Integer,right As Integer,m As Integer     Dim x As Integer,r As Integer     Randomize     s = Text1.Text: n = 1: i = 1     Do While i <= Len(s)         k = i: ch = Mid(s, k, 1)         Do While             k = k + 1: ch = Mid(s,k,1)         Loop         dd(n) = Val(Mid(s,i,k - i))         i = k + 1: n = n + 1     Loop     x = 1: fp(x) = dd(1)     For i = 2 To n - 1         left = 1         right = x         Do While left <= right             m = (left + right) \ 2             If  Then                 right = m - 1             Else                 left = m + 1             End If         Loop                  fp(r) = dd(i)         If r = x + 1 Then x = x + 1     Next i     Label2.Caption = "第" + Str(i - 1) + "件快递将由第" + Str(r) + "号快递员收取"     '列表框List1中显示每位快递员的收取情况,代码略 End Sub (4) 程序加框处代码有错,请改正 答案: 【1】2 【1】3 【1】ch <> "," And k <= Len(s)【2】fp(m) <= dd(i) r = left
信息技术 试题推荐
最近更新