注册 登录
编程论坛 ASP技术论坛

循环语句的初学者问题

lele2007 发布于 2008-04-22 16:15, 1515 次点击
大家好!我在学习ASP时不太懂循环语句的区别有什么不同!
do...loop
1)语法一、
do while 条件1
执行语句
loop

do
执行语句
loop while 条件2

2)语法二、
do until 条件3
执行语句
loop



do
执行语句
loop until 条件4
还有一个是:
while 条件
执行语句
wend
----------------------------
我不太明白上面的有什么不一样!有没有其它的知识,或者实例呀!我看了书本上的介绍,但比较模糊,只懂得do while 执行语句 loop的用法,for...next比较容易还有do 执行语句 while loop也了解,其它的不太明白,请赐教下!谢谢!
10 回复
#2
阿里阿里2008-04-22 17:10
Do While是条件循环,当循环条件为真时循环,这样就有可能一次也不执行循环体,循环体内必有一条让条件由真变假的语句,为结束循环做准备。

附加:For循环是计次数循环,循环次数由循环变量的终值减去初值再除以步长。
#3
tianyu1232008-04-22 17:14
do while...loop与do until...loop的区别主要在于判断的条件上
do while...loop 当条件为真时循环,直至条件为假时跳出循环
do until...loop 当条件为假时循环,直至条件为真时跳出循环
至于do until...loop与do...loop until的区别与do while...loop与do...loop while他们的区别是一样的
while...wend与do while...loop的功能是一样的 while...wend他一般不常用
#4
lele20072008-07-20 11:17
哦,明白了!!谢谢楼上!不知道可不可以这样来理解。
do while ...loop与do until ..loop是反过来的。可呵,而while .... wend则是跟do while ... loop是一模一样的功能的,没有区别,可以这样认为的吧?
#5
multiple19022008-07-20 12:24
其实这些问题,动态跟踪一下程序的执行就搞清楚了。
#6
hmhz2008-07-20 12:53
想要真正明白他们的区别,你自己测试一下就完全明白了,那比别人告诉你还要清楚
#7
yms1232008-07-20 13:31
[bo][un]lele2007[/un] 在 2008-4-22 16:15 的发言:[/bo]

大家好!我在学习ASP时不太懂循环语句的区别有什么不同!
do...loop
1)语法一、
do while 条件1
执行语句
loop

do
执行语句
loop while 条件2

2)语法二、
do until 条件3
执行语句
loop



 ...

 do while 条件1
  执行语句
 Loop
这个循环语句会首先进行循环条件的判断,符合条件后再执行语句

do
执行语句
loop while 条件2
这个循环语句会先执行语句一次再进行条件判断,符合条件会执行第二次,否则不会执行第二次

do until 条件3
执行语句
loop
until对判断条件的逻辑值进行取反操作
比如
常见的RecordSet循环方法为例来讲解

程序开始
Do While Not rs.EOF
'判断rs.EOF=False
'考虑这样的写法Do While rs.EOF=False
   '执行语句
   rs.MoveNext'移动到下一行
Loop

程序开始
Do
   '执行语句
   rs.MoveNext'移动到下一行
Loop While Not rs.EOF'判断rs.EOF是否=false
这两种循环的区别在于条件的书写位置,条件在循环开始写就会先进行条件判断再循环。
而条件在循环结束写就会先循环再判断条件。

Do Until rs.EOF
   rs.MoveNext
Loop
这里的Until实际是在取反,注意区别Do While循环会有一个Not判断rs是否等于=false
而这里的Until直接写等同于Not rs.EOF而省略Not在于这里的取反操作。
#8
yms1232008-07-20 13:36
[bo][un]lele2007[/un] 在 2008-7-20 11:17 的发言:[/bo]

哦,明白了!!谢谢楼上!不知道可不可以这样来理解。
do while ...loop与do until ..loop是反过来的。可呵,而while .... wend则是跟do while ... loop是一模一样的功能的,没有区别,可以这样认为的吧?

程序编成是很严谨的问题。
就像
Do While
Loop

Do
Loop While
看似没有区别,在某些程序里可能就是因为这样的一种“小区别”,从而产生意想不到的效果或大的错误。
因此在写这种循环时一定要把这种“小区别”带来的大影响也要考虑进去。
#9
multiple19022008-07-20 14:05
Do While
Loop

Do
Loop While

区别很大。
#10
multiple19022008-07-20 14:05
在程序逻辑里起的作用几乎完全不同。
#11
lele20072008-07-20 16:59
好的!明白了许多! 非常谢谢!但感觉用得多的还是do while ... loop
了!只是看到有些程序中有其它的,现在明白了好多了!我得测试测试!! 谢谢各们版主的解析!
下次我会动态跟踪一下程序了!
下次我会动手测试一下滴!
yms123版主的好详细!谢谢!
-------------------------------------------
但这样一个问问题的过程中似乎比看书懂得快!明白得多些!!有时还有意想不到的收获!呵呵!

[[it] 本帖最后由 lele2007 于 2008-7-20 17:01 编辑 [/it]]
1