




已阅读5页,还剩21页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第九章程序设计基础 一 VF的工作方式二 程序的建立与运行三 程序中的交互语句及辅助语句四 程序的基本结构五 过程设计 VF的工作方式 VF的三种工作方式 命令方式 菜单方式 程序文件方式 程序文件 命令文件 方式 程序 就是根据所解决问题的需要 将能完成相应功能的命令或语句按照一定的逻辑关系组织起来的命令集合 程序文件的扩展名为 PRG 返回 程序的建立与运行 以命令方式建立 编辑程序文件格式 MODIFYCOMMAND功能 建立或编辑修改程序文件 说明 扩展名默认为PRG 文件名为默认路径下已有的文件 则使用此命令表示修改指定的程序 文件名为默认路径下没有的文件 则使用此命令表示新建指定的程序 命令 MODICOMM 功能 从文件列表中选择要修改的程序 保存程序 1 用 文件 菜单中的 保存 命令 2 工具栏上的 保存 按钮 3 按关闭按钮 程序书写规则 程序中的每条命令都以回车结尾 一行只能写一条命令 若命令需分行写 应在一行尾加 号续行 然后回车 以菜单方式建立 编辑程序文件用 项目管理器 建立 编辑程序文件 程序文件的调用以命令方式调用格式 DO说明 程序运行中 遇到以下情况之一 将终止程序运行 执行到程序尾 自然结束 返回VF系统主窗口 执行了RETURN命令 终止程序执行 返回原调用处的下一语句继续执行 用于过程中 执行了CANCEL命令 终止程序执行返回系统主窗口 执行了QUIT命令 终止程序执行 退出VF系统 以菜单方式调用程序文件 程序中的交互语句及辅助语句 简单的格式化输入 输出命令格式化输入命令格式 语句1 SAY GET DEFAULT 语句2 READ功能 语句1的功能是在屏幕指定位置显示和的值 语句2的功能是重新编辑修改的值 说明 要输入编辑数据 语句1 2必须联用 可编辑类型 C N D L型 SAY用于对GET变量作提示性说明 变量可为字段名变量 也可为内存变量 变量必须有初值 或用DEFAULT短语的指定初值 初值一旦指定 该变量的类型在编辑期间就不能改变 字符型变量的宽度与数值型变量的小数位数也无法改变 格式化输出命令格式 SAY 人机对话命令输入单字符命令 WAIT格式 WAIT TO 功能 暂停程序执行 等待用户键入一字符后继续 说明 输入的任何数据 均作为字符型数据处理 只能输入一个字符或直接回车 回车相当于输入空串 一般用字符串说明 不选用则自动提示 按任一键继续 选用TO时 可将输入的字符保存在内存变量中 以便以后使用 例 若有表文件WJ1 DBF WJ2 DBF WJ3 DBF 如何实现只输入一个字符而能打开这些表 输入字符串命令 ACCEPT 可输入多个字符 格式 ACCEPT TO功能 暂停程序执行 等待用户输入一串字符后 按回车键程序继续运行 说明 输入的任何数据 均作为字符型数据处理 提示信息的用法与WAIT语句相同 不选用则不提示 与WAIT不同 例1 根据输入的文件名 打开指定的表文件 例2 在RCDA表中按指定姓名 出生日期 工资 查询 LOCATE SEEK 记录 输入多种类型数据命令 INPUT格式 INPUT TO功能 暂停程序执行 等待用户输入数据 回车后继续 说明 输入的数据类型可为C N D L 输入字符型数据 必须加定界符 输入日期型 用 yyyy mm dd 或用CTOD 函数转换 例1 在RCDA表中按指定姓名查询 例2 在RCDA表中按指定工资 生日 查找 小结 区别WAIT ACCEPT INPUT三条命令的不同 辅助命令CLEAR清屏命令NOTE 注释必须自成一行 对程序段作说明 注释接在命令语句后对该语句作说明 TEXTENDTEXT功能 原样输出TEXT与ENDTEXT之间的内容 程序的基本结构 VF系统的应用程序中 常见的控制结构有 顺序结构特点 按照语句书写的先后顺序依次执行 执行到程序尾退出 缺陷 1 一次只能操作一组数据 2 不能对数据进行判断 分支结构一 简单分支语句格式 IFENDIF意义 略 说明 IF ENDIF必须成对使用 可以是表达式 也可是函数 但结果必须为逻辑值 例1 在RCDA表中按姓名查询记录 找到则显示该记录 否则不显示 没找到则提示 无此姓名的记录 例2 从键盘输入两个不同的自然数 输出其中最大的 二 选择分支语句格式 IFELSEENDIF意义 略 例1 P150 例2 修改前面的例2 三 多分支语句格式 DOCASECASE CASE OTHERWISE ENDCASE 功能说明 略 注意 DOCASE与ENDCASE必须成对出现 DOCASE与CASE之间不能放其它语句 各条件不能互相包含 即不能让两个或两个以上的值为 T 因为程序只能执行第一个值为 T 的所对应的语句序列 例1 P151 例2 从键盘上输入三个不同的自然数 输出其中最大的 四 分支语句的嵌套结构 略 例1 对DJPD表 根据学号查询 对查到的记录再根据平均分定等级 并填写等级字段 85分以上为优 76 85为良 60 75为中 60分以下为差 若没找到则显示 查无此人 例2 对成绩表 根据学号查询 对查到的记录再判断其民族 若为少数民族则总分 5 否则不加分 若没找到指定记录 则提示 查无此人 注意 ELSE与ENDIF都与最近的IF语句匹配 各分支结构不能相互交叉 循环结构程序设计一 当型循环格式 DOWHILE LOOP EXIT ENDDO意义 当为 T 时 重复执行DOWHILE与ENDDO之间的语句序列 直到为 F 时 退出循环继续执行ENDDO之后的语句 注意 DOWHILE ENDDO语句本身不具有给循环变量赋初值的功能 因此应当在该语句之前给循环变量赋初值 并且在循环体中必须有修改循环条件的值的语句 LOOP EXIT只能在循环中使用 而不能在循环外使用 LOOP作用 不再执行其后的语句序列 而进入下一次循环 即重新返回DOWHILE处判断条件的值 EXIT作用 强制退出循环 继续执行ENDDO之后的语句 几种常见的循环结构 1 对数据表记录进行操作的循环特点 循环条件一般用 NOT EOF 用SKIP命令修改循环条件 循环体中操作对象是数据表中的记录 例1 逐条显示RCDA表中性别为女的记录 条件分别为 NOT EOF 与 NOT BOF 例2 在RCDA表中 按性别查找 依次对性别为女的工资加100元 例3 在成绩表中 统计解几成绩分别在85分以上 76至85分 小于76分的学生的人数 练习 在DJPD表中 按平均分对每人评定等级 并将评定结果填到等级字段中 85分以上为优 76 85为良 60 75为中 60分以下为差 2 循环次数一定的循环特点 循环次数一定 循环条件多为关系表达式 其中含控制循环次数的循环变量 循环变量有初值和终值 循环体中有修改循环变量的语句 使循环变量增或减值 否则成为死循环 例1 求1到100之间所有整数之和 两种方法 改变初值 例2 求1到100之间的奇数和 三种方法 练习 求10 3 随机循环特点 随机条件的值总是为 T 这样就不能自动退出循环 死循环 必要时 可使用EXIT RETURN CANCEL QUIT强制退出循环 例 在RCDA表中 实现可连续按姓名查询 作业 用循环语句编程判断任意一个由键盘输入的整数是否为素数 二 计数 型循环控制语句 格式 FOR TO STEP LOOP EXIT ENDFOR NEXT功能 循环变量首先被赋为变量初值 然后比较循环变量与终值来决定是否执行循环体内的命令语句 步长值为正数时 若循环变量值不大于终值 就执行循环体 步长为负数时 若循环变量不小于终值 就执行循环体 执行一遇到ENDFOR或NEXT 循环变量立即被加上步长值 然后重新与结束值比较 说明 如果无STEP短语 默认步长值为1 例 改写前面当型循环的例子 三 指针 型循环控制语句格式 SCAN FOR WHILE LOOP EXIT ENDSCAN功能 略 P154 四 多重循环 即循环体中又包含另外一些循环 格式 略 例1 在RCDA表中 按性别查询 要求能逐条查到所有性别相同的记录并显示 例2 打印九九表 练习 输出3到100之间的所有素数 输出格式 一行输出5个数 每个数间用5空格隔开 小结 略 P155 过程与过程调用 引入定义 我们将以过程说明语句开头 以返回命令结束 能完成一定功能 可以被其它程序反复调用的程序段叫做过程 过程的分类 1 以独立文件存在的过程 称为外部过程 2 若干个过程共存于一个过程文件的过程 称为内部过程 过程返回语句1 RETURN TOMASTER 功能 返回调用程序原调用处的下一语句继续执行 TOMASTER的作用 用在过程嵌套中 直接返回最高层调用处 如不选 则逐级返回 2 RETRY功能 返回调用程序原调用语句 继续执行 外部过程的建立及调用 1 建立与建立一般程序相同 求5 10 20 SETTALKOFFS 0N 1T 1DOWHILEN 5T T NN N 1ENDDOS S TN 1T 1DOWHILEN 10T T NN N 1ENDDOS S TN 1T 1DOWHILEN 20T T NN N 1ENDDOS S T 5 10 20 SSETTALKON 返回 2 过程调用格式 DO说明 可以将过程保存在单独的程序文件中 也可放在程序的结尾 但不能把可执行的主程序放在过程之后 例 改写引入程序 思考 求C M N M N 过程文件及使用1 过程文件的建立格式 MODICOMM2 过程文件的组织形式PROCEDUREENDPROC PROCEDUREENDPROC 3 过程文件的调用步骤 打开过程文件格式 SETPROCEDURETO注意 同一时刻只允许打开一个过程文件 调用过程文件中的过程格式 DO功能 调用已打开的过程文件中的指定过程 关闭过程文件格式1 SETPROCEDURETO格式2 CLOSEPROCEDURE功能 关闭打开的过程文件 过程的嵌套 过程调用中的数据传递利用内存变量的属性传递数据全局变量 公共变量 公共变量是在VF系统的全部范围内均有效的内存变量 包括命令窗口及程序的任何部分 主程序及其子程序中 定义格式 PUBLIC功能 把中指定的内存变量定义为全局变量 说明 1 全局变量在程序结束时不释放 只能使用清除内存变量的命令清除 CLEARMEMORY CLEARALL 2 定义的全局变量在赋值前 自动赋值为 F 局部变量局部变量只在定义它的程序段有效 而在此程序段的上级程序段或下级程序段无效 定义格式 LOCAL功能 把中指定的内存变量定义为局部变量 说明 1 局部变量在其所在程序段结束时自动清除 2 定义的局部变量在赋值前 自动赋值为 F 私有变量私有变量是在定义它的程序段以及其下级程序段 被调用过程 的局部范围内都有效的内存变量 定义格式1 PRIVATE格式2 PRIVATEALL LIKE EXCEPT 功能 把指定的变量定义为私有变量 说明 1 程序中凡没有使用PUBLIC LOCAL和PRIVATE语句定义的变量都是私有变量 2 格式2用法 PRIVATEALL 定义所有内存变量为私有变量 PRIVATEALLLIKE 定义与相符的变量为私有变量 PRIVATEALLEXCEPT 定义与不相符的变量为私有变量 3 私有变量在其有效程序段结束时自动清除 例子 settalkoffloca
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 化工设备供货安装进度计划及应急措施
- 公交车站消防维保质量管理及保证措施
- 婚庆公司主持人台词管理制度
- 鲜花店大学生创业计划书-
- 2025贵州盘江煤电集团医院招聘68人考试备考题库及答案解析
- 2025北京海淀教育集团系列中关村第三小学教育集团招聘备考题库及答案解析
- 跨界融合表演艺术市场中的差异化品牌定位策略-洞察及研究
- 2025广东广州市直属机关工会工作委员会招聘工会组织员1人考试备考题库及答案解析
- 工业自动化设计质量目标及质量保证措施
- 2025年放射治疗学常见肿瘤治疗方案设计模拟考试答案及解析
- DB31/T 477-2018旅行社服务质量要求及等级划分
- AI智能体的感知与理解
- 餐饮行业数字化门店运营与管理效率提升报告
- S7-1200 PLC原理及应用基础 课件 第5章 S7-1200 PLC的模拟量处理
- 2024年四川省古蔺县事业单位公开招聘医疗卫生岗笔试题带答案
- 2025-2030中国驾驶培训行业市场发展前瞻及投资战略研究报告
- 2024年版中华民族共同体概论专家大讲堂课件全集第10章至16章节讲根据高等教育出版社教材制作
- 生产过程控制制度
- 糖尿病足的预防和护理
- 国网公司合规管理
- 生物质气化并网发电行业跨境出海战略研究报告
评论
0/150
提交评论