第9章 结构化程序设计.ppt
文本预览下载声明
9.1.2 程序的控制结构 任何复杂的程序都由3种基本控制结构组成。它们是顺序结构、选择结构和循环结构。 9.1.3 结构化程序设计方法 结构化程序设计采用自顶向下、逐步求精和模块化的分析方法。 自顶向下是指对设计的系统要有一个全面的理解,从问题的全局入手,把一个复杂问题分解成若干个相互独立的子问题 。逐步求精是指程序设计的过程是一个渐进的过程,先把一个子问题用一个程序模块来描述,再把每个模块的功能逐步分解细化为一系列的具体步骤 。模块化是结构化程序的重要原则。所谓模块化就是把大程序按照功能分为较小的程序。 选择结构能根据指定条件和当前值在两条或多条程序路径中选择一条执行,因此在一个程序中便能处理多种情况的复杂问题。VFP提供3种格式的选择结构。 1. 单一选择 2. 双重选择 3. 多重选择 1. 单一选择 格式:If 条件 命令序列 Endif 功能:条件取值为“真”,执行命令序列;条件取值为“假”,命令序列就不执行。 说明:If和Endif必须成对出现,相互匹配。 例14: 单一选择应用举例 clear wait 是否退出?(Y/N): to a if upper(a)= Y wait 退出Visual Foxpro! timeout 5 quit endif 2. 双重选择 格式: If 条件 命令序列1 Else 命令序列2 Endif 功能:根据条件的取值在命令序列1与命令序列2这两条路径中选择一条执行。 例15 例16 例17 例9.2 9.3.2 多重选择 格式: 功能 Do case case 条件1 命令序列1 case 条件2 命令序列2 ... case 条件n 命令序列n [otherwise 命令序列n+1] Endcase 例18 例19 格式: 功能 Do case case 条件1 命令序列1 case 条件2 命令序列2 ... case 条件n 命令序列n [otherwise 命令序列n+1] Endcase 例18 例18 例19 9.4 循环结构程序 按循环结构来组织程序,能够做到由指定条件的当前值来控制程序中某一部分命令序列的重复执行。VFP提供了多种循环结构,它们是当循环、For-Next循环、表文件扫描循环等等。 1. 当循环 2. for-next循环 3. 表扫描循环 例 求[1,100]内所有能被3或被5整除的数的个数。 例9.6 clear for i=100 to 999 a=int(i/100) b=int(mod(i,100)/10) c=i%10 if i=a^3+b^3+c^3 ?i endif endfor return 例9.8 clear store 0 to x,y set defa to g:\vf学习\vf文件 use 学生 scan for 少数民族否 if 性别=男 x=x+1 else y=y+1 endif endscan ?少数民族的男生有:,x,人 ?少数民族的女生有:+str(y,2)+人 use return 9.5 程序的模块化 9.5.1 子程序、过程和函数 1.子程序 (1).子程序的结构 子程序与其他程序文件的惟一区别是其末尾或返回处必须有返回语句。 命令格式:RETURN.[TO.MASTER|TO.〈程序文件名〉|〈表达式〉] (2).子
显示全部