求解答。VB高手进。

来源:百度知道 编辑:UC知道 时间:2024/07/03 12:10:26
程序说明: 在窗体上有两个命令按钮和1个文本框,名称分别为cmdstart(“开始”)、cmdend(“结束”)和Text1,文本框Text1的字符个数不超过200个。程序刚运行时,“结束”按钮为灰色,单击“开始”按钮后,将Text1中的字符按其中ASCII码值从小到大自左到右重新组合,并在窗体上输出重新组合的字符串,同时使“结束”按钮能响应而“开始”按钮不能响应。
Private Sub Form_Load()
Cmdend.Enabled=False
End Sub
Private Sub CmdStart_Click()
Dim n As Integer,I As Integer, j As Integer, p As Integer
Dim a(200) As String, str1 As String, t As String
str1=Text1.Text:n=Len(str1)
For i=1 to n
a(i)=__str1(i)____(1)________
Next I
For i= 1 to n-1
P=i
For j=i+1 to n
If a(p)>a(j) then __ t=a(j): a(j) =a(p): a(p)=t _____(2)______
Next j
If ___(3)_ a(p)>a(i)_____ Then t=a(i): a(i) =a(p): a(p)=t
Next i
For i=1 to n : Print a(i); :Next i
_____(4)_ cmdstart.enable=flase____
_____(5)______ cmdend .enabke=true End Sub
Private Sub Cmdend_Click()
End
End Sub

不知道你标的那些数字是什么意思,我按你的需求,做出来,代码如下:
Private Sub Cmdend_Click()
Text1 = ""
Cls
Cmdend.Enabled = False
CmdStart.Enabled = True
End Sub

Private Sub Form_Load()
Cmdend.Enabled = False
End Sub
Private Sub CmdStart_Click()
Dim n As Integer, I As Integer, j As Integer, p As Integer
Dim a(200) As String, str1 As String, t As String
str1 = Text1.Text: n = Len(str1)
For I = 1 To n
a(I) = Mid(str1, I, 1)
Next I
For I = 1 To n - 1
p = I
For j = I + 1 To n
If a(p) > a(j) Then t = a(j): a(j) = a(p): a(p) = t
Next j
Next I
For I = 1 To n: Print a(I);: Next I
CmdStart.Enabled = flase
Cmdend.Enabled = True
End Sub
你试试看。