按指定格式录入数据,例:0373,张乐晓,3.90。编号宽度固定为4位,姓名宽度固定为3个汉字,不足部分以全角空格补齐,第9个字符开始为跳远成绩。
在文本框按回车表示录入一项数据结束,录入的数据经处理后编号、姓名、成绩分别存放在数组编号bh、xm、cj中并将原始数据显示在List1中。
点击命令按钮Command1后进行排序并将排序后的结果显示在List2中。
程序运行界面如图所示。
Dim bh(1 To 8) As String
Dim xm(1 To 8) As String
Dim cj(1 To 8) As Single
Dim num As Integer
Private Sub Command1_Click()
Dim i As Integer, j As Integer, k As Integer, tmp_1 As String, tmp_2 As Single
For i = 1 To 7
k = i
For j = k + 1 To 8
If Then k = j
Next j
If k <> i Then
tmp_1 = bh(k): bh(k) = bh(i): bh(i) = tmp_1
tmp_1 = xm(k): xm(k) = xm(i): xm(i) = tmp_1
tmp_2 = cj(k): cj(k) = cj(i): cj(i) = tmp_2
End If
Next i
For i = 1 To 8
List2.AddItem bh(i) & xm(i) & Str(cj(i))
Next i
End Sub
Private Sub Form_Load()
num = 0
End Sub
Private Sub sr_txt_Keypress(KeyAscii As Integer)
Dim srsj As String '输入数据
If KeyAscii = 13 Then
num = num + 1
srsj = sr_txt.Text
bh(num) = Mid(srsj, 1, 4)
xm(num) = Mid(srsj, 6, 3)
cj(num) =
List1.AddItem srsj
If num = 8 Then num = 0
End If
End Sub
i = 1: j = 6: k = 0
key = Val(Text1.Text)
Do While i<= j
k = k + 1
m = Int((i + j)/2 + 0.5)
If key = a(m) Then Exit Do
If key < a(m) Then j = m - 1 Else i = m + 1
Loop
文本框Text1中输入27,执行该程序段后,k的值为2,则a(1)到a(6)各元素可能的值是( )
Const n=6
Flag=False:key=30
For i=1 To n-1
L=i+1:R=n
Do While L<=R And flag=False
m=(L+R)\2
If d(i)+d(m)<key Then
L=m+1
ElseIf d(i)+d(m)>key Then
R=m-l
Else
Label1.Caption=Str(d(i))+" "+Str(d(m))
flag=True
End If
Loop
Next i
If Not flag Then Label1.Caption=“没有符合条件的数对”
数组元素d(1)到d(6)的值依次为“5,8,13,17,22,25”。则程序段执行后,标签Label1中显示的内容是( )
Private Sub Command1_Click()
Const n = 20
Dim i As Integer, j As Integer
Dim a(1 To n) As Integer
For j = 1 To n
a(j) = 0
Next j
For i = 1 To n
For j = 1 To n
Ifthen
End If
Next j
Next i
For j = 1 To n
If a(j) = 0 Then list1.AddItem Str(j)
Next j
End Sub
为了实现程序该功能,在画线处填写正确代码。
在该表中下列操作能实现的是( )
为实现上述功能的程序如下,请在程序划线处填入合适的代码。
Private Sub Command1_Click()
Dim a As String
Dim n As Integer
a = Text1.Text
n = Len(a)
Do While ① and Mid(a, n, 1)="0"
n = n - 1
Loop
For i = n To 1 Step -1
Text2.Text = Text2.text + ②
Next i
End Sub
下列说法正确的是( )