第11讲程序模块化@(4学时).pptVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第11讲程序模块化@(4学时).ppt

第11讲 程序的模块化 主讲教师 谢可夫 教学内容提要 一、程序模块化 二、子程序模块 1.子程序 2.函数 3.过程 三、内存变量的作用域 四、调用子程序时的数据传送   思考一个问题: 编写一个程序求:2×7!+6×12!+9×15!=? 解: 在前面所学知识的基础上,可编写程序p110如下 由上可见,三个循环具有相同的功能:求一个数n的阶乘  求数n的阶乘模块(命名:JCn)的基本语句     p=1    for k=2 to n    p=p*k   endfor 上述问题的解决方案: n1=3 n2=4 n3=5 调用JCn求n1的阶乘 调用JCn求n2的阶乘 调用JCn求n1的阶乘 求2×3!+6×4!+9×5! 一、程序的模块化 结构化程序设计方法: 程序模块化(子程序技术) 1. 实现方法:将一个大的系统分解成若干个称之为模块的子系统(子程序)来实现。 2. 子程序模块的2种形式: 子程序 函数 过程 二 子程序模块 1.子程序:以程序文件(.PRG)的形式单独存储在磁盘上并可反复被调用执行的程序模块。 (1)子程序的结构:与一般的程序同,但尾部有返回语句。 返回语句格式: RETURN [TO MASTER|TO 程序文件名|表达式] 功能:中止一个程序、过程或用户定义函数的执行,返回到上一级调用程序、最高级调用程序、另外一个程序或者命令窗口。 说明: ① 子程序是被另一个程序调用的,遇到RETURN时,则 自动返回到上级调用程序。如果是在最高一级主程序 中,遇到RETURN时,则返回到命令窗口。 ② 若选用TO MASTER子句,则返回到最高一级调用程 序,即在命令窗口下调用的第一个主程序。 ③ 在程序最后,如果没有RETURN命令,则程序运行完 后,将自动默认执行一个RETURN命令,但过程文件 除外。 ④ 执行RETURN命令时,释放本程序所建立的局部变 量,恢复用PRIVATE隐藏起来的内存变量。 ⑤ TO 〈程序名〉表示将控制权交给指定的程序。 ⑥ RETURN 〈表达式〉表示将表达式的值返回调用程 序,用于自定义函数。 (2)子程序的创建: MODIFY COMMZND 子程序名|? (3) 子程序的调用 子程序调用命令与主程序执行命令相同,其格式都为: DO 程序文件名|过程名 [WITH 参数表] 说明: 〈参数表〉子句指定传递到程序或过程的参数,在〈参数表〉中列出的参数可以是表达式、内存变量、常量、字段名或用户定义函数。可把参数放在圆括号中,各参数用逗号分隔。传递给一个程序的参数最多为24个 例:用子程序技术实现求2×3!+6×4!+9×5! 主程序:main110.prg 子程序:JCn.prg 2. 自定义函数 (1) 结构 [FUNCTION 函数名] [PARAMETERS 参数表] 命令组 RETURN [表达式] 说明: (2) 调用: 与内部函数的调用相同(即通过函数名调用)。 函数名(自变量表) 说明:自变量可以是任何合法的表达式,自变量的个数 必须与自定义函数中PARAMETERS语句里的变量个数相等,自变量的数据类型也应符合自定义函数的要求。 例11-1:编制一个函数,求球的体积,并计算半径为2、3、4的三个球的体积之和。 例11-2 定义一个判断n是否素数的函数,然后调用该函数求2~1000内的全部素数。 分析 素数(质数): 一个大于1,且只能被1和它本身整除的整数。 判断某数n是否为素数的方法: 用2、3、4、5、…、n-1这些数逐个去除n,看能否除尽,如果全都除不尽,则n是素数 例:判7素数? 用2,3,4,5,6去除7,都不能除尽,则7是素数。

文档评论(0)

peace0308 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档