回复 34楼 cwa9958
Private Type 人员 '创建用户自定义的类型。ID As Integer
姓名 As String * 20
年龄 As Integer
电话 As String * 11
End Type
Dim a() As 人员
Private Sub Form_Load()
'-------------------
'数据如下:
'张三 27 13555555555
'李四 23 18777777777
'王二 36 19099999999
'-------------------
'张三 27 13555555555
ReDim Preserve a(1)
a(1).ID = 1
a(1).姓名 = "张三"
a(1).年龄 = 27
a(1).电话 = "13555555555"
'李四 23 18777777777
ReDim Preserve a(2)
a(2).ID = 2
a(2).姓名 = "李四"
a(2).年龄 = 23
a(2).电话 = "18777777777"
'王二 36 19099999999
ReDim Preserve a(3)
a(3).ID = 3
a(3).姓名 = "王二"
a(3).年龄 = 36
a(3).电话 = "18777777777"
'Debug.Print a(1).年龄
'Debug.Print a(2).年龄
'Debug.Print a(3).年龄
'-------------------------
'冒泡排序,升序排列算法
'-------------------------
'定义变量
Dim arr1
'数组赋值
arr1 = Array(a(1).年龄, a(2).年龄, a(3).年龄)
For m = 0 To UBound(arr1)
For i = m + 1 To UBound(arr1)
k = arr1(m)
If arr1(m) > arr1(i) Then
arr1(m) = arr1(i)
arr1(i) = k
End If
Next
MsgBox arr1(m)
Next
End Sub
年龄是排序出来了,但是却对应不上姓名了,如何根据年龄输出姓名呢?求教。
[此贴子已经被作者于2022-11-23 16:43编辑过]
心生万象,万象皆程序!
本人计算机知识网:http://bbs.为防伸手党,本站已停止会员注册。