VB新手请教!请仔细读题!!!

来源:百度知道 编辑:UC知道 时间:2024/06/28 07:21:58
题目很长,请仔细看题目要求和提示!!!

在窗体上新建text1 ,text2 ,text3 ,和command1 。
要求:
1.每在text1中输入一个英文字符串,按回车键后即把该字符存放到数组中,并输出在排序前的文本框text2中。
2.单击command1按钮,字符数组“升序”排序,并在排序后的文本框text3中输出。
提示:
1.定义窗体级字符型动态数组s和整形变量n(表示输入字符串的个数),即在通用声明段中声明如下:Dim n As Integer,s()As String.
2.在文本框TEXT1的KeyPress事件中编写程序处理输入单词,并存入数组中,同时记录输入次数!
Private Sub Text1_KeyPress(KeyAscii As Integer)
if KeyAscii=13 then
...... '此处写处理输入单词,并存入数组中,同时记录输入次数
End if
End Sub

请大家一定仔细阅读要求和提示啊!

Option Explicit
Dim n As Integer, s() As String

Private Sub Command1_Click()
Dim i As Integer, j As Integer, min As Integer, n As Integer, temp As String
n=n-1
For i = 0 To n - 1
min = i
For j = i + 1 To n
If s(j) < s(min) Then min = j
Next j
temp = s(i): s(i) = s(min): s(min) = temp
Next i
Text3.Text = Join(s, vbNewLine)
End Sub

Private Sub Form_Load()
ReDim s(0)
End Sub

Private Sub Text1_KeyPress(KeyAscii As Integer)
If KeyAscii = 13 Then
s(n) = Text1.Text
n = n + 1
ReDim Preserve s(n)
Text2.Text = Text2.Text & vbNewLine & Text1.Text
Text1.Text = ""
End If
End Sub

Private Sub Command1_Click()
Dim i As Integer
Dim j As Integer
Dim t As String
For i = 1 To n '排序
For j = j To n
If s(i) > s(j) Then
t = s(j)
s(j)