A-A+

以下过程用来在w数组中插入x w数组中的数已按由小到大的/顷序存放 n指存储单元中存放数组中

2022-08-12 20:23:55 问答库 阅读 197 次

问题详情

以下过程用来在w数组中插入x,w数组中的数已按由小到大的/顷序存放,n指存储单元中存放数组中数据的个数,插入后数组中的数仍有序。请填空补充程序。 Sub fun(w,x,n) Dim i,p p=0 w(n)=x Do While x>w(p) 【 】 Loop For i=n to p+1 Step-1 w(i)=【 】 Next i w(p)=x n=n+1 Sub End


请帮忙给出正确答案和分析,谢谢!

参考答案

正确答案:p=p+1 w(i-1)
先要找到x的插入点,从w(0)开始与x比较,找到第一个大于x的元素,该元素的位置即为x的插入点,DoWhile语句就是完成这个功能,p作为下标变量,每循环比较一次,就移动一次,因此要对p进行加1的操作;找到x的插入点后,要将其后元素依次后移,从最后一个元素开始移动,把前一个元素的值送到后一个元素处。

考点:过程,单元中