VB 中关于多重循环的执行问题
2009-12-07 21:00
309 查看
在程序设计中,变量、类型等是基础,语句才是直接影响程序功能发挥的因素
程序的功能无非就是这么几个:
判断:
判断某个变量是不是某个值,然后执行某个动作
跳转:
通常在判断后转到对应的语句上,而不是一路执行下来
循环:
其实循环可以说是判断+跳转,如汇编的修改IP指针,C++和VB的Goto语句,C/C++也可以用指针
来跳转,但是专门的循环语句要容易用的多,VB中常见的循环就是For循环和Do循环,应该说Do循环
是包含了While循环的。
退出循环,可以用Exit语句,Exit for,Exit Do,While循环则不能半路退出,直到条件满足。
我们来看例子:
Public Sub dfind()
Dim i, j As Integer
Dim bFind As Boolean
For i = 1 To 5
For j = 0 To i
If i * j > 10 Then '判断
bFind = True '标识已经完成
MsgBox str(i) + " " + str(j)
Exit For '只是退出for j循环
If bContinue = False Then Exit Sub '直接跳出过程,当然也跳出了所有循环
End If
Next j
If bFind = True Then Exit For '满足则跳出for i循环,否则继续
Next i
End Sub
其实对这种问题有一种豪放就是Debug,VB6中用F8单步调试,就可以对整个过程一目了然了。
程序的功能无非就是这么几个:
判断:
判断某个变量是不是某个值,然后执行某个动作
跳转:
通常在判断后转到对应的语句上,而不是一路执行下来
循环:
其实循环可以说是判断+跳转,如汇编的修改IP指针,C++和VB的Goto语句,C/C++也可以用指针
来跳转,但是专门的循环语句要容易用的多,VB中常见的循环就是For循环和Do循环,应该说Do循环
是包含了While循环的。
退出循环,可以用Exit语句,Exit for,Exit Do,While循环则不能半路退出,直到条件满足。
我们来看例子:
Public Sub dfind()
Dim i, j As Integer
Dim bFind As Boolean
For i = 1 To 5
For j = 0 To i
If i * j > 10 Then '判断
bFind = True '标识已经完成
MsgBox str(i) + " " + str(j)
Exit For '只是退出for j循环
If bContinue = False Then Exit Sub '直接跳出过程,当然也跳出了所有循环
End If
Next j
If bFind = True Then Exit For '满足则跳出for i循环,否则继续
Next i
End Sub
其实对这种问题有一种豪放就是Debug,VB6中用F8单步调试,就可以对整个过程一目了然了。
相关文章推荐
- 关于for循环的执行效率问题
- 关于Handler使用遇到的问题--多执行了些循环。
- 关于js中循环遍历中顺序执行多个嵌套ajax的问题
- 关于for 循环里 线程执行顺序问题
- 关于循环执行效率问题
- 关于多重循环效率问题
- 关于for循环的执行效率的问题
- 关于执行rsh后while不能循环的问题
- 关于Java new对象构造方法执行顺序 解释恶汉单例模式死循环问题
- 多重循环的退出问题 if-break
- 关于hibernate执行select count( *) 出现java.lang.ClassCastException问题
- 关于“用VB将ASP代码封装到DLL文件 ”问题
- 关于百度地图定位 onReceiveLocation执行两次的问题
- 关于php执行liux命令出现的问题,记载
- 关于viewDidLoad在[super init]之前执行的问题
- [VB.NET]关于dataset的haschanges问题
- 早上遇到的问题,关于for in循环问题
- 关于crontab执行shell脚本的字符编码问题
- 关于swift for 循环 遍历数组删除元素的bug问题
- 关于Ubuntu上建立express项目后执行node app.js没反应的问题