類。 (單選,填字母:A.Form/B.Label/C.TextBox/D.CommandButton) (2)請在橫線處填入合適的代碼。 ①
; ②
; ③
。 (3)程序中加框處代碼有錯,請改正。 改正:
。 Const n=4 Dim a(1 To n)As Integer'n道菜由每家餐廳外賣員送達耗時 Dim b(1To n)As Integer'n道菜自取耗時 Private Sub Form_Load
。 '產生外賣送貨各道菜耗時,并存儲到數組a中,并顯示, '產生自取各道菜耗時,并存儲到數組b中,并顯示 '代碼略 End Sub Private Sub Command1_Click
Dim i As Integer,max As Integer,ans As Integer Dim left As Integer,right As Integer,m As Integer For i=1 1 To n If a(i)>max Then ①
'外賣員送菜的最長時間 Next i left=1:right=max:ans=max. m=(left+right)\2 If ②
Then ans=m:right=m-1 Else left=m+1 End If Loop Lab3.Caption=“最快“+str(ans)+“分鐘“ End Sub private Function check(t As Integer)As Boolean Dim total As Integer check=False For i=1 To n If a(i)>t Then total=③
'如果外賣來不及就自己取 End If Next i If tital>=t Then check=True End Function
(填點數,逗號分隔) (2)實現上述功能的VB程序如下,請在橫線處填入合適代碼。 Const n=52 Dim hs(1 To n) As Integer’存儲每張卡牌的花色 Dim num(1 To n) As Integer’存儲每張卡牌的點數 Dim class(1 To 4)As Integer’存儲每種花色卡牌的存儲位置 Dim record(1 To 12)As Integer Private Sub Form_Load
’讀取打亂的卡牌中每張卡牌的花色、點數數據,存入數組hs,num中,代碼略 End Sub Private Sub Command1_Click
Dim k As Integer,i As Integer,p As Integer Dim flag As Boolean flag=True For i=1 To 4 class(i)=①
’計算每種花色卡牌存儲的起始位置 Next i i=1 Do While i<=n And flag=True k=hs(i) If class(k)>k*3 Then p=pos(i) If p<>0 Then ②
End If Else record(class(k))=i class(k)=class(k)+1 If class(1)=4 And class(2)=7 And class(3)=10 And class(4)=13 Then flag=False End If End If i=i+1 Loop List1.AddItem“&”“花色”“&”“&”“點數” For i=1 To 12 List1.AddItem“”& hs(record(i)&“”& mua(record(i) Next i End Sub
Function pos(t As Integer)As Integer’返回點數最小卡牌位置 Dim min As Integer m=(hs(t)-1)*3+1 min=m If num(record(min))>num(record(n+1))Then min=m+1 If num(record(min))>mun(record(m+2))Then min=m+2 If③