VB假如有十个数在a数组中已按由小到大的顺序排序,输入一个数X,把X的值插入到数组中

插入后A数组的数据仍然有序
2025-01-02 14:50:34
推荐回答(2个)
回答1:

新定义一个11个数的数组,然后把a数组先放到新的数组内,然后再用x跟新数组的数字比大小。从a0开始,若x>a0,则x跟后续一个再比。直至an>x,则x代替an。an往后移。

回答2:

采用VB的动态数组,先定义为:
Dim a(1 to 10) as single
存放10个任意的数据,并升序存放。
然后用
Redim Preserve a(1 to 11) as single
扩大数组规模到11。
通过从后向前顺序查找的方法,一边查找一边将数据后移,最后找到插入的位置。
For i = 10 to 1 step -1
if X < a(i) Then
a(i+1) = a(i)
else
a(i+1) = x
exit for
end If
next i