![]() ![]() |
|
VFP顺序结构和选择结构 | |
作者:佚名 文章来源:不详 点击数 更新时间:2008/4/18 14:51:13 文章录入:杜斌 责任编辑:杜斌 | |
|
|
一.顺序结构:我们将依次执行程序中的语句的程序结构称为顺序结构,这是最简单的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 |
|
![]() ![]() |