| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 722 人关注过本帖
标题:为什么会导致VB6.0死掉
只看楼主 加入收藏
海蓝啸
Rank: 5Rank: 5
来 自:安徽
等 级:贵宾
威 望:17
帖 子:1611
专家分:0
注 册:2006-4-3
结帖率:100%
收藏
 问题点数:0 回复次数:5 
为什么会导致VB6.0死掉

下面这个程序是我写的二分法查找程序。。。。设了一个数组共三一个数。。。用循环赋值○到30
上面那个是二分查找函数。。。我不知道我写的对不对。。。。但是好像查找的数在数组中的时候就很正常。。。要是
没有。。。。VB6.0就会死掉。。。必需强行关闭才能关掉。。。。不知道 为什么。。。请各位指教

Private Function search$(a() As Integer, key%)
Dim up%, down%, mid%
up = UBound(a)
down = LBound(a)
Do Until down > up
mid = (up + down) \ 2
If a(mid) = key Then
search = Str(mid)
Exit Function
ElseIf a(mid) > key Then
up = mid
Else: down = mid
End If
Loop
search = "没找到哦"


End Function
Private Sub Form_click()
Dim i%, a(30) As Integer, k%
For i = 0 To 30
a(i) = i
Next i
k = Val(InputBox("请输入要查找的数"))
Print search(a, k)

End Sub

搜索更多相关主题的帖子: down mid key 二分法 Integer 
2006-11-25 21:01
cphong
Rank: 2
等 级:论坛游民
帖 子:7
专家分:10
注 册:2006-6-5
收藏
得分:0 
你可以按下 Ctrl + Pause 键中断执行
2006-11-25 22:10
yeshirow
Rank: 4
等 级:贵宾
威 望:10
帖 子:854
专家分:0
注 册:2006-6-8
收藏
得分:0 

else: down=mid+1


原來朋友仔感情再天真, 亦是我永遠也會愛惜的人, 明日愛他人, 也記住學會不要緊; 原來朋友比戀人更高分, 亦讓我開始懂得不記恨, 若大家都敏感, 我更要永遠記得拒絕再因小事怪人, 爲何沒有這條校訓...Twins-朋友仔 MCSD Training
2006-11-26 00:50
海蓝啸
Rank: 5Rank: 5
来 自:安徽
等 级:贵宾
威 望:17
帖 子:1611
专家分:0
注 册:2006-4-3
收藏
得分:0 

我按楼上的改过了。。把up=mid 改成up = mid - 1 把down = mid 改成down = mid + 1
确实可以。。。但我在想。。我要是不改的话,只是每次多加了一个比较的数而已,为什么会导致VB6.0 死掉呢。。。想不通。。。


这个社会太复杂。。。
2006-11-26 14:05
yeshirow
Rank: 4
等 级:贵宾
威 望:10
帖 子:854
专家分:0
注 册:2006-6-8
收藏
得分:0 

vb 沒有死掉, 你卻陷入了循環的無限中...
while until ??
---------
而且不是你所說的未賦初值的問題, 只要數組中沒有要找的數, 都會陷入其中
----------
二分查找法, 不妨考慮 3 個元素的情況對比一下


原來朋友仔感情再天真, 亦是我永遠也會愛惜的人, 明日愛他人, 也記住學會不要緊; 原來朋友比戀人更高分, 亦讓我開始懂得不記恨, 若大家都敏感, 我更要永遠記得拒絕再因小事怪人, 爲何沒有這條校訓...Twins-朋友仔 MCSD Training
2006-11-26 14:56
海蓝啸
Rank: 5Rank: 5
来 自:安徽
等 级:贵宾
威 望:17
帖 子:1611
专家分:0
注 册:2006-4-3
收藏
得分:0 
了解了。。。。谢谢楼上的。。。呵呵

这个社会太复杂。。。
2006-11-26 15:30
快速回复:为什么会导致VB6.0死掉
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.038116 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved