关于vb编程..高手近..排序

来源:百度知道 编辑:UC知道 时间:2024/07/07 03:06:29
使用自定义类型声明一个自定义类型数组,要求功能如下:
i. 输入10个学生的信息,包括姓名、学号、成绩,并在输入后将学生的信息显示在PictureBox1上。
ii. 排序,按“排序”按钮,使学生成绩按递减排序,并将排序后的学生信息显示在PictureBox2上。
要使用inputbox来输入信息.

排序就是用上述输入的信息成绩排序

'需要在窗体上添加一个Command控件,Caption为“排序”,再添加两个PictureBox控件,宽度较大一点,以免显示不全。代码如下:

Private Type Stuinfo
sort As Integer
name As String
num As String
score As Integer
End Type

Dim stu(1 To 10) As Stuinfo
Dim k As Integer

Private Sub Command1_Click()
For i = 1 To k - 1
For j = 1 To k - i
If stu(j).score < stu(j + 1).score Then
a = stu(j).name: b = stu(j).num: c = stu(j).score
stu(j).name = stu(j + 1).name: stu(j).num = stu(j + 1).num: stu(j).score = stu(j + 1).score
stu(j + 1).name = a: stu(j + 1).num = b: stu(j + 1).score = c
End If
Next
Next

Picture2.Cls
Picture2.Print "名次", "姓名", "学号", "成绩"
For i = 1 To k
With stu(i)
Picture2.Print .sort, .name, .num, .score
End With
Next
End Sub

Private Sub Form_Activate()
Picture1.AutoRedraw = True
Picture2.Aut