文档详情

VFP 循环结构.ppt

发布:2018-05-14约1.21万字共46页下载文档
文本预览下载声明
4.1.3 循环结构 循环语句的三种形式: 〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓 当型循环: DO WHILE ? ENDDO 步长型循环: FOR ? ENDFOR 表记录扫描处理 SCAN ? ENDSCAN(将在后续章节中介绍) 4.1.3 循环结构--DO WHILE基本概念 一、 DO WHILE … ENDDO(当型循环) 格式: DO WHILE 条件表达式 语句序列 ENDDO 功能: 当 条件表达式 的值为真时,重复执行DO WHILE … ENDDO之间的语句序列 ,直到 条件表达式 的值为假时结束。 4.1.3 循环结构--DO WHILE基本概念 一、DO WHILE … ENDDO(当型循环) DO WHILE 条件表达式 语句序列 ENDDO 说明 一般在循环体语句序列中,应该包含改变条件表达式值的命令,否则将出现死循环现象(即永真循环)。 当条件表达式一开始就不成立时,循环一次也不做。 4.1.3循环结构--DO WHILE应用举例 1.对已知循环次数的程序段进行顺计数操作。 控制格式: N=初值(通常设为1) DO WHILE N=M 语句序列 N=N+1 ENDDO 功能:已知循环次数M,通过对循环变量N进行顺计数并与M比较的方法完成循环操作。 4.1.3循环结构--DO WHILE应用举例 4.1.3循环结构--DO WHILE应用举例 例1:求1+2+3+…+10的和值 解1:顺计数 SET TALK OFF CLEAR S=0 累加器赋初值,用于存放最后的和值 N=1 累加器赋初值,将用于存放循环次数 DO WHILE N=10 S=S+N 实现累加,即用原来的S加上N,和值再赋给S N=N+1 实现累加,即用原来的N加上1,和值再赋给N ENDDO ?1+2+3+…+10=,S SET TALK ON 2.对已知循环次数的程序段进行倒计数操作。 控制格式: DO WHILE N0 语句序列 N=N-1 ENDDO 功能:已知循环次数N,通过对循环变量N进行倒计数并与0比较的方法完成循环操作。 例1:求1+2+3+…+10的和值 解2:倒计数 SET TALK OFF CLEAR S=0 累加器赋初值,用于存放最后的和值。 N=10 累加器赋初值,将用于存放循环次数。 DO WHILE N0 S=S+N 实现累加,即用原来的S加上N,和值再赋给S。 N=N-1 实现累减,即用原来的N减去1,差值再赋给N。 ENDDO ?1+2+3+…+10=,S SET TALK ON 例2:求A!的值,A从键盘输入。 SET TALK OFF CLEAR T=1 累乘器赋初值,用于存放最后的积值。 INPUT A= TO A N=1 DO WHILE N=A T=T*N 实现累乘,即用原来的T乘上N,积值再赋给T。 N=N+1 ENDDO ?ALLTRIM(STR(A,19))+ !=,T SET TALK ON 注意:循环控制变量N参与累乘。 例3:求XN的值,X,N值从键盘 SET TALK OFF CLEAR T=1     累乘器赋初值,用于存放最后的积值 INPUT X= TO X INPUT N= TO N I=1 DO WHIL I=N T=T*X   实现累乘,即用原来的T乘上X,积值再赋给T I=I+1 ENDDO ?T=,T SET TALK ON 注意:循环控制变量I未参与累乘,只是用来控制循环的次数。 4.1.3 循环结构--FOR基本概念 二、 FOR…ENDFOR(步长型循环) DO WHILE …ENDDO结构适用于一般的条件判断,实现循环控制作。但在计数控制中,用FOR…ENDFOR循环结构更为方便。 格式: FOR 循环变量=初值 TO 终值 [STEP 步长] 语句序列 ENDFOR/NEXT 4.1.3 循环结构--FOR基本概念 二、 FOR…ENDFOR(步长型循环) 例4:求1+2+3+…+N的和值,N由键盘输入 SET TALK OFF CLEAR S=0    累加器赋初值,用于存放最后的和值。 INPUT “N=” TO N 累加器赋初值,将用于存放循环次数。 FOR X=1 TO N S=S+X     实现累加,即用原来的S加上X,和值再赋给S。      并执行 STEP 1,即X=X+1后,进入下一次循环。
显示全部
相似文档