计算机VFP程序设计第7章 结构化程序设计(2)

2018-12-19 20:27

CASE <条件n> <语句序列n> [OTHERWISE <语句序列n+1>]

ENDCASE

从DO CASE入口顺序判断各个CASE子句的条件,执行最先满足条件的CASE语句序列。执行完成后,无论后面的条件是否为真,都直接跳出ENDCASE语句序列,直接执行ENDCASE后面的语句。如果任何条件都不满足,则执行OTHERWISE下的语句序列,然后执行ENDCASE后面的语句,如果没有OTHERWISE子句,则直接跳出本结构。

例:上题利用DO CASE 来实现。

例:以下程序段执行的结果是

X=85 DO CASE CASE X>60 ?”及格” CASE X>80 ?”良好” OTHERWISE ?”不及格”

ENDCASE

三、 循环结构

? 概念:循环结构也称重复结构,是指程序在执行的过程中,其中的某段代码被重复执行若干次。被重复执行的代码段,通常称为循环体。Visual FoxPro支持循环结构的语句包括:DO WHILE—ENDDO、FOR—ENDFOR和SCAN—ENDSCAN (一)DO WHILE—ENDDO 语句格式:

DO WHILE<条件>

<语句序列1> [LOOP] <语句序列2> [EXIT]

<语句序列3>

ENDDO

说明:程序的走向(???)

先判断DO WHILE处的循环条件是否成立,如果条件为真,则执行循环体,当执行到ENDDO时,返回到DO WHILE,再次判断循环条件是否为真,若为真再次执行循环体.若条件为假,则结束该循环语句,执行ENDDO后面的语句.

循环变量(体外赋初始值,体内修改)

条循环ENDDO后面的语句例:编写程序:输出1+2+3+……100的结果

提示:引进内存变量S和i。S用来保存累加的结果,初值为0;i作为控制循环条件是否成立的变量,初值为1;重复执行命令S=S+i和i=i+1 拓展:

求s=1*2*3*4……100 求S=1+3+5+7+……101

例:编写程序TEST3:逐条显示SC表中成绩高于75分的所有记录 预备知识: EOF()函数,LOCATE 的使用。 CLEAR USE SC

DO WHILE NOT EOF() if 成绩>75 DISPLAY

WAIT \按任意键继续!\ endif SKIP ENDDO

特例:循环控制子句:LOOP,EXIT

在循环体中遇到LOOP时终止本次循环,直接转回到DO WHILE处重新判断循环条件。

在循环体中遇到EXIT时直接退出循环而去执行ENDDO后面的语句。

例:在STUDENT表中可以反复查询不同院系的学生的信息。 use student do while .t.

accept \请输入待查询的院系号:\locate for 院系号=x if found()

select * from student where 院系号=x else

?\对不起,找不到你要查询的院系号!\endif

wait \还查询其他的院系吗?\if upper(y)=\ loop else exit endif enddo close all

例:在 DO WHILE…ENDDO循环结构中,LOOP命令的作用是()

A)退出过程,返回程序开始处

B)转移到 DO WHILE语句行,开始下一个判断和循环 C)终止循环,将控制转移到本循环结构ENDDO后面的第一条语句继续执行

D)终止程序执行

例:在DO WHILE……ENDDO循环结构中,EXIT命令的作用是()

A) 退出过程,返回程序开始处

B) 转移到DO WHILE语句行,开始下一个判断和循环 C) 终止循环,将控制转移到本循环结构ENDDO后面的第一条语句继续执行

D)终止程序执行

(二)FOR—ENDDO步长循环 格式:

FOR <内存变量> = <初值> TO <终值> [STEP <步长值>]

<语句序列> //循环体

ENDFOR 注解:

1、 <内存变量>称为循环变量,<初值>、<终值>和<步长值>

都是数值型表达式;

2、 如果没有STEP子句,则步长为1;


计算机VFP程序设计第7章 结构化程序设计(2).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:建筑工程施工特点及安全管理存在问题和解决措施论文

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: