vb基础问题 要求代码

来源:百度知道 编辑:UC知道 时间:2024/04/30 13:49:54
单击窗体产生一个有序数组,并在窗体上打印输出;点击“插入”按钮,要求输入一个数并将其插入数组,使得数组仍然有序(即将该数插入到适当的位置)。
设计思想:
1. 首先定义一个数值类型的数组a()(动态数组),用inputbox函数输入数组元素个数n
2. 利用循环遍历数组,使用数机函数给数组元素赋初值
3. 排序:方法见预习内容的排序算法
输入要插入的数x,重定义动态数组(ReDim Preserve a(n+1) ,增加一个元素);找出要插入的位置p,从数组最后(a(n))到插入位置(a(p))的所有元素逐个后移(nn+1,n-1->n,….p->p+1),然后将x插入位置p(a(p)=x)。

dim i,n as integer
n=15
for i=n to 10 step -1
a(n)=a(n-1)
next
a(10)=p

Private Sub Form_Click()
Dim i As Long, s As Long, b()
b = Array(1, 2, 3, 4, 5, 6, 12, 34, 56, 78, 99)
s = Val(InputBox("请输入一个数", "提示"))
If s < b(0) Or s > b(UBound(b)) Then
MsgBox "输入数字超过范围!"
End
End If

For i = 0 To UBound(b) - 1
If Val(s) >= b(i) And Val(s) <= b(i + 1) Then Exit For
Next
ReDim Preserve b(UBound(b) + 1)
For i = UBound(b) To i + 1 Step -1
b(i) = b(i - 1)
Next
b(i + 1) = s

Cls
For i = 0 To UBound(b)
Print b(i)
Next

End Sub

时间关系 你自己改下