- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
VF程序设计 第九章节程序设计 循环部分
一、单边分支 二、双边分支 条件分支函数 三、多重分支 第三节 循环结构程序设计 一、FOR 循环(计数型循环) 二、DO WHILE 循环 (条件循环) DO WHILE 循环在数据表录入中的应用 LOOP EXIT 语句功能示意 三、SCAN 循环 (指针型循环) 例 用 SCAN 语句逐条显示在 《学生表 》中性别为“男”的学生的所有记录内容。 1、自定义函数 2、过程设计 VF 程序设计基础教学要点 基本要求 分析 1*1=1 1*2=2 2*2=4 1*3=3 2*3=6 3*3=9 1*4=4 2*4=8 3*4=12 4*4=16 ┇ ┇ ┇ 1 ~ 9 行 第 ? 行:1 ~ i 列 第3行第3列 行 乘 数 列:被乘数 1 2 3 4 1 2 3 4 clear set talk off FOR 被乘数 = 1 TO 9 列数 = (被乘数-1) * 9 FOR 乘数 = 1 TO 被乘数 行数 = 乘数 @ 行数,列数 SAY STR(被乘数,1) + X + STR(乘数,1) + = + LTRIM(STR(被乘数*乘数)) ENDFOR ENDFOR set talk on return for(被乘数 = 1 TO 9) for(乘数=1 TO 被乘数 ) 输出 被乘数 * 乘数 = x 第五节 子程序、过程和函数 结构化程序设计方法要求将一个大的系统分解成若干个子系统,每个子系统就构成一个程序模块。模块是一个相对独立的程序段,它可以为其他模块所调用,也可以去调用其他模块。将一个应用程序划分成一个个功能相对简单、单一的模块程序,不仅有利于程序的开发,也有利于程序的阅读和维护。VFP模块化在具体实现上提供三种形式,它们是子程序、过程和函数。 主程序与子程序调用关系示意图 一、子程序 子程序也叫外部过程,是以程序文件(.PRG)的形式单独存储在磁盘上的。子程序只需录入一次,就可反复被调用执行 。 1.子程序的结构 在VFP中,子程序的结构与一般的程序文件一样,可以用 MODIFY COMMAND命令来建立、修改、和存盘,扩展名也默认为.PRG。 【命令格式】 RETURN [TO MASTER|TO 程序文件名|表达式] 【命令功能】该命令中止一个程序、过程、或用户自定义函数的执行,返回上一级调用程序、最高级调用程序、另外一个程序或命令窗口。 【语句说明】 (1)通常程序执行到 RETURN时,会自动返回到上级调用程序调用语句的下一条语句继续执行。如果是在最高一级主程序中,则返回命令窗口。 (2)选用TO MASTER 子句时,则返回最高一级调用程序,即在命令窗口下,调用的第一个主程序。 (3)TO 程序文件名表示程序将转向到指定的程序。 (4)如选用表达式,表示将表达式的值返回调用程序,通常用于自定义函数。 (5) 在程序最后,如果没有 RETURN命令,则程序运行完毕后,将自动默认执行一个RETURN命令,但过程文件除外。 2.子程序的调用: 【命令格式】 DO 程序文件名|过程名[WITH 参数表] 【命令功能】执行以程序文件名或过程名为名的过程。 【命令说明】 WITH参数表子句用来指定传递到程序或过程的参数,在参数表中列出的参数可以是表达式、内存变量、常量、字段名或用户自定义函数,各参数间用逗号分隔。 【例】 * MAIN.PRG ****** SET TALK OFF ? ”正在执行主程序” DO SUB1 SET TALK ON ? * SUB1.PRG ****** ? ”正在执行SUB1” RETURN 【例】利用子程序方法求M!/(N!*(M-N)!)(MN) * main.prg *** * 子程序sub1.prg* INPUT 请输入M: TO m s=1 INPUT 请输入N: TO n FOR i=1 TO x s=0 s=s*i x=m ENDFOR DO sub1 RETURN s s2=s x=n DO sub1 s3=s x=m-n DO sub1 s4=s s1=s2/(s3*s4) ? s1 过程和函数也都
文档评论(0)