·一周点击排行
·热点推荐
VFP顺序结构和选择结构
发布时间:2007-11-1 16:01:00 浏览次数: 814
vfp支持3种基本程序控制构造:顺序结构,选择结构和循环结构
一.顺序结构:我们将依次执行程序中的语句的程序结构称为顺序结构,这是最简单的1种程序结构
例:顺序结构例程
程序文件内容:
set talk off
clear
input "请输入圆的半径:" to r
s=3.1415926*r*r
"圆的面积是:",s
return
说明:执行程序时,屏幕上显示提示信息:请输入圆的半径.当用户键入半径并按回车时,vfp计算出圆的面积并显示在屏幕上.
二.选择结构:实际应用中,常需要先判断后处理,根据不同情况做不同的处理.选择结构就是对指定的条件进行判断,如果条件成立,则执行指定的语句序列.在vfp中,选择结构包括if语句和do case语句.
1.if语句:
格式:
if 条件
语句序列1
[else]
[语句序列2]
endif
说明:
(1).格式中的条件,多为条件表达式或逻辑表达式,结果为逻辑真或逻辑假
(2).执行该语句时,首先对条件进行判断,如果是逻辑真,则执行语句序列1,然后转到endif后的第1条语句继续执行;否则执行语句序列2,然后转到endif后的第1条语句继续执行.
(3).需判断的条件比较多时,可以使用if语句嵌套.
(4)endif必须与if成对出现
例:设计1个查询程序,希望当待人不存在时有信息提示.
程序文件内容:
clear
accept "请输入待查人姓名" to xm
locate for 姓名=xm
if .not.eof()
display
else
messagebox("查无此人")
endif
use
return
说明:程序执行时,执行locate命令时,记录指针从表的首记录一直找到最后1条记录都未发现该姓名记录时,记录指针才最后停在文件尾,此时eof()为真值;相反,若eof()取假值,则表示记录指针停在待查人的记录上.即当
.not.eof()为真时,记录指针停在待查人的记录上,查到的指定的记录.也可用found()来代替程序中的.not.eof()
2.do case语句:
虽然使用嵌套if语句可以解决多条件的选择判断问题,但当条件比较多时,嵌套层数也会增多,程序结构也就会变复杂.为解决多条件的选择判断问题,vfp提供了结构简单,使用方便的do case语句.
格式:
do case
case 条件1
语句序列1
case 条件2
语句序列2
……
otherwise
语句序列n
endcase
说明:
(1).从第1个case进行判断,若条件i成立,则执行语句序列i,然后跳到endcase后的第1条语句继续执行;若加上otherwise选项,则在所有的case条件均不满足时,执行其后的语句序列n
(2).endcase必须与do case成对出现.
例:设计1个程序,使用do case语句在"职工档案"表中按编号或姓名查询
程序文件内容:
clear
use 职工档案
wait "请选择按姓名或按编号查询(X/B)" to xz
do case
case xz$"Xx" &&此条件为真,说明选择了X,即按姓名查询
accept "请输入待查人姓名:" to xm
locate for 姓名=xm
caxe xz$"Bb"
accept "请输入待查编号:" to bh
locate for 编号=bh
otherwise
wait "查询选择错误!按任意键退出!" wind
endcase
display
use
return
讨论此主题请进>>: VFP顺序结构和选择结构