为了找出QQ在线时间最长的5名学生,李风设计了一个排序程序.程序运行界面如图所示:

左边列表框List1中显示排序前数据,单击“排序”按钮Command1,在右边列表框List2中显示在线时间从高到低排名前5名的数据.程序中数组a和数组b分别存储学生的QQ昵称和对应的QQ在线时间.
程序代码如下:
Const n As Integer=14'n为学生数
Dim a(1To n) As String'数组a用于存储学生的QQ昵称
Dim b(1To n) As Integer'数组b用于存储学生的QQ在线时间
Private Sub Command1_Click ( )
Dim i As Integer,j As Integer,t As String,p As Integer
For i=1To n-1
For j=n To i+1Step-1
If ①Then
t=a(j-1):a(j-1)=a(j):a(j)=t
p=b(j-1):b(j-1)=b(j):b(j)=p
End If
Next j
Next i
For i=1To 5
List2.AddItem SpaceEx(a(i))+Str(b(i))+“分钟“
Next i
End Sub
'以下函数用于在字符串后补插空格
Function SpaceEx(s As String) As String
Dim t As String,d As Integer,i As Integer
t=s:d=Len(s)
For i=1To 5-d
t=t+““
Next i
SpaceEx=②
End Function
Private Sub Form_Load ( )
'此过程用于对数组a和数组b进行赋值,并显示在List1中,代码略
End Sub
(1)解决此问题采用的算法是 冒泡排序冒泡排序.(填:选择排序/冒泡排序)
(2)在程序①和②填入适当的语句或表达式,将程序补充完整:
程序中①应填入 b(j)>b(j-1)b(j)>b(j-1).程序中②处应填入 tt.
【考点】冒泡排序算法及其实现;编辑事件处理过程的代码.
【答案】冒泡排序;b(j)>b(j-1);t
【解答】
【点评】
声明:本试题解析著作权属菁优网所有,未经书面同意,不得复制发布。
发布:2024/11/5 1:30:1组卷:21引用:2难度:0.1
相似题
-
1.有如下 Python 程序段:
运行后列表中的值可能是( )发布:2024/12/18 21:0:2组卷:5引用:3难度:0.3 -
2.用VB编写的函数bubble_sort是一个用冒泡方法实现排序的函数,其调用时需要三个参数:布尔类型参数sx来确定是升序还是降序,sx为True时为升序,否则为降序;整数型数组a
比如有一个整数型数组a(1 to 10)需要降序排序,可以直接这样调用:
a
该函数VB代码如下:
Function bubble_sort(sx As Boolean,a
Dim i,j,t As Integer
For i=1 To n-1
For j=
If
If a(j)<a(j-1)Then t=a(j):a(j)=a(j-1):a(j-1)=t
Else
If a(j)>a(j-1)Then t=a(j):a(j)=a(j-1):a(j-1)=t
End If
Next j
Next i
bubble_sort=a
End Function
请将代码补充完整:
①
②发布:2024/12/20 20:30:1组卷:23引用:2难度:0.3 -
3.用选择排序法对一组数据进行升序排序,第一趟排序结束后的顺序为2、6、9、3、7,则原始数据顺序不可能的是( )
发布:2024/12/18 23:0:1组卷:10引用:1难度:0.5