使用顺序查找法,在一组数中查找某给定的数x。VB程序 编写个实例代码

使用顺序查找法,在一组数中查找某给定的数x。按照以下分析设计个实例程序源代码(全部代码),下面的只是功能模块。前提必须使用下面提供的思想代码。只有20分了。。呵呵 全拿出来了。
编程分析:设一个组数据存放在数目a(1)~a(n)中,待查找的数据放在x中,顺序查找的算法为:把x与a数组中的元素从头到尾一一进行比较查找。用变量p表示a数组元素下标,p初值为1,使x与a(p)比较,如果x不等于a(p),则使p=p+1,不断重复这个过程;一旦x等于a(p)则退出循环;另外,如果p大于数组长度,循环也应该停止,则可由以下语句来实现它。
For p = 1 To n
If x = a(p) Then Exit For
Next p
下面编写一查找函数Find(),若找到x则返回下标值,找不到返回0
Option Base 1
Private Function find(a() As Single, x As Single) As Integer
Dim n%, p%
n = UBound(a)
For p = 1 To n
If x = a(p) Then Exit For
Next p
If p > n Then p = -1
find = p
End Function

Option Base 1

Private Function find(a() As Single, x As Single) As Integer
Dim n%, p%
n = UBound(a) '数组元素个数
For p = 1 To n '循环每个元素
If x = a(p) Then Exit For '如果找到相同 则退出循环 此时的P值既是结果
Next p
'如果没找到 P值将会是 N+1
If p > n Then p = 0
find = p
End Function

Private Sub Form_click()
Dim test(10) As Single
Dim x As Single
Randomize
For i = 1 To 10
test(i) = Int(Rnd * 10 + 1)
Next
x = 2 '
MsgBox find(test, x)
End Sub
温馨提示:答案为网友推荐,仅供参考
第1个回答  2011-11-19
直接用这段代码就行了追问

我晕。。这个只是功能模块。部分 代码。执行不了的!你到底会不?会就麻烦把全部代码写下来,谢谢。

相似回答