vfp实例教程   vfp基础教程   vfp初级教程   vfp中级教程   vfp高级教程   vfp网上文摘   vfp等级考试   vfp源码下载
您的位置:首页 >> vfp教程 >> vfp初级教程 >> 第五课


循环语句(do while...enddo)

根据条件重复执行一组程序。

语法

DO WHILE lExpression
    Commands
    [LOOP]
    [EXIT]
ENDDO

参数

lExpression 为一逻辑表达式,其值如果是“真”,即执行commands程序组,如果表达的值为“假”,则跳过该段程序组,执行enddo后面的语句。

Commands 当表达式 lExpression 值为真时所要执行的程序组。

LOOP 此为 do while...enddo 命令的一个子句,它可以放在 commands 程序组中间的任何地方,当程序一旦执行到该子句时,则返回 do while 重新执行。此子句根据需要可以有,也可以没有。

EXIT 与loop一样是 do while...enddo 命令的一个子句,它可以放在 commands 程序组中间的任何地方,当程序一旦执行到该子句时,则跳出循环,执行enddo后面的语句。此子句根据需要可以有,也可以没有。

备注

程序一旦执行到do while 语句,如果 lExpression 的值为真,则执行 commands 程序组,该程序组执行完后,就到enddo语句,enddo会将程序返回 do while 再次验证 lExpression 是否为真,如仍是,则又一次执行 commands ,如此循环往复,直到 lExpression 为假,或遇上 exit 语句。

该语句可以嵌套,即循环中还可以有循环。

do while 与 enddo 必须配对使用,即有一个 do while 必须有一个 enddo 否则程序会出错。

举例

例1:在数据库中不断将记录指针往下移,直到数据库结尾。程序如下:

do while .not. eof()
  skip
enddo

例2:在上面的例子加入此功能,当遇到性别字段为“女”时,跳出循环。程序如下:

do while .not. eof()
  if  性别='女'
    exit
  endif
  skip
enddo

例3:不断将记录指针往下移,当遇到数量字段的值大于等于600时退出循环,如遇到值小于400的,将其值乘2,然后再检验一次是否大于600,如是则退出循环。程序如下:

do while 数量<600
  if  数量<400
    replace 数量 with 数量*2
    loop
  endif
  skip
enddo

返回第五课

     

首页 | 设为首页 | 加入收藏 | 关于本站 | 友情链接 | 版权声明

     
 
Copyright© www.bianceng.cn Powered by 编程入门网 All Rights Reserved
吉ICP备06005558号