vb题目,高手帮忙啊

来源:百度知道 编辑:UC知道 时间:2024/05/09 10:30:13
从键盘输入一批(不超过100个)正整数,输入0表示输入结束。在这一列数中,寻找最长的递增子序列,在屏幕上依次输出这个子序列中的数。
例如:输入的数是11,23,54,26,35,64,77,71,80,0,输出的是26 35 64 77

用VB编,清楚点,请你自己先看对不对

试试看。
建一个COmmand1.
代码如下。
=============
Private Sub Command1_Click()
Dim a() As Integer, m As Integer, i As Integer, j As Integer, p As Integer, q As Integer
Do
i = i + 1
ReDim Preserve a(i)
a(i) = Val(InputBox("请输入第" & i & "个数", "输入“0”结束"))
If a(i) > a(i - 1) Then
j = j + 1
Else
If j > m Then m = j: p = i
j = 1
End If
Loop Until a(i) = 0
For j = p - m To p - 1
Print a(j)
Next
End Sub

Option Explicit

Private Sub Command1_Click()
Dim a() As Integer
Dim i As Integer, j As Integer, n As Integer, m As Integer
Dim k As Integer
Dim s As String, maxL As String
Do
n = InputBox("请输入第" & i + 1 & "个数,输入0结束!")
If n = 0 Then
Exit Do
Else
ReDim Preserve a(i)
a(i) = n
Print a(i);
i = i + 1
End If
Loop
maxL = ""
For j = 0 To UBound(a)