第4章 程序设计 数据库应用与开发2009 教学课件.ppt

上传人:dream****gning 文档编号:133973212 上传时间:2020-06-01 格式:PPT 页数:122 大小:647KB
返回 下载 相关 举报
第4章 程序设计 数据库应用与开发2009 教学课件.ppt_第1页
第1页 / 共122页
第4章 程序设计 数据库应用与开发2009 教学课件.ppt_第2页
第2页 / 共122页
第4章 程序设计 数据库应用与开发2009 教学课件.ppt_第3页
第3页 / 共122页
第4章 程序设计 数据库应用与开发2009 教学课件.ppt_第4页
第4页 / 共122页
第4章 程序设计 数据库应用与开发2009 教学课件.ppt_第5页
第5页 / 共122页
点击查看更多>>
资源描述

《第4章 程序设计 数据库应用与开发2009 教学课件.ppt》由会员分享,可在线阅读,更多相关《第4章 程序设计 数据库应用与开发2009 教学课件.ppt(122页珍藏版)》请在金锄头文库上搜索。

1、第4章程序设计第三章详细介绍了FoxPro的数据库操作命令 这些命令可以直接在命令窗口中输入 执行结果立即在屏幕上显示 通常把这种在命令窗口中执行命令的方式称作命令语句执行方式 它的特点是操作简单 立竿见影 有很强的人机对话功能 FoxPro还有一种命令执行方式 称作程序执行方式 它是把若干个命令 根据需要按一定规则组织起来构成一个称作程序的命令集合 又称为命令文件 运行程序就能有序地执行一系列命令 程序执行方式有极强的数据管理能力 适用于解决复杂的数据处理问题 利用FoxPro开发的众多应用软件都是以程序方式组织的 4 1程序设计方法 在引进程序设计使用的一些命令之前 为了使初学者对使用数据

2、库提供的命令进行程序设计的过程有一个宏观的认识 首先介绍一下程序设计的基本步骤和方法 编写一个解决某一问题的程序的过程 一般称作程序设计 程序设计大致要经过如下几个步骤 1 分析问题这是程序设计的必要条件 只有把要解决的问题分析清楚了 目标才能明确 才有可能研究解决问题的方法 2 算法设计问题分析清楚之后 一个极为重要的工作是为解决该问题寻找一种正确的方法 如果说分析问题是确立目标 那么算法设计则是为实现目标指出道路 算法设计是程序设计的核心 灵魂 通常也是初学者感到最困难的地方 3 画程序流程图有了正确的算法 下一步是按着算法的执行步骤和要求 画出实现该算法的程序流程图 这一步起着承前启后的

3、作用 通过设计流程图 既可以进一步理解和完善算法 又为下一步的程序编码铺平道路 程序流程图是由一些带有标注的图框组成 这些图框主要分两类 一类是步骤框 表示该框要执行的命令 另一类是判断框 表示执行该框的命令时 程序要出现分支 即根据判断框中值的 真 假 或不同的情况分别去执行不同的命令 步骤框一般用矩形表示 框内注明该步要完成的任务 判断框用菱形表示 框内注明判断条件的表达式 4 程序编码画出程序流程图后 根据流程图的顺序 用数据库系统提供的命令逐步编写程序 这一过程称为程序编码 在程序编码过程中 一是要求用户对FoxPro提供的各种命令的功能和方法非常熟悉 另一方面要求用户在使用命令时要有

4、一定的技巧性 要注意程序的可读性 简明性及运行的时间 5 调试程序程序编码工作完成后 将程序输入到计算机中去运行 在运行过程中修正程序中的语法错误称作调试程序 当程序能顺利执行 无任何语法错误时 调试程序结束 6 分析结果虽然程序已经能顺序运行 这只能说明该程序已没有语法错误 并不等于说没有算法错误 所以 程序设计的最后一步还要认真分析程序运行后的结果 若发现结果与实际要求不符 即说明该程序存在算法错误 这时 首先要检查算法是否正确 然后检查程序流程是否合理 程序编码是否准确 检查出错误原因后 修正错误 重新调试程序 直至得到正确的结果 4 2建立 修改和运行命令文件 4 2 1命令文件的结构

5、下面是一个简单的命令文件程序 统计程序文件名 TJ PRCSETTALKOFFUSEZYDACOUNTTONSUMTOS N S S NUSERETURN 1 命令文件由若干行组成 每行最多能书写2048个字符 一行只能含一条命令 若要把一条命令写成若干行 需在行尾填写 号 但最后一行不写 该例有8行 8条命令 2 第1行是注释行 号是注释命令 亦可用NOTE 其功能是对程序做注释 以提高程序的可读性 命令文件执行时 注释行是不执行的 故称注释命令为非执行命令 注释命令可出现在命令文件中的任意位置 3 第2行是一条运行环境设置命令 环境设置命令是一些以SET开头的命令 其功能是为程序运行设置环

6、境 SETTALKOFF的作用是禁止非输出命令在屏幕上显示执行结果 环境设置命令可以出现在命令文件的任意位置 4 第3至7行是程序的主体 其功能是打开数据库ZYDA DBF 计算库中记录个数 工资求和 计算平均工资和显示计算结果 然后关闭数据库 5 最后一行是返回命令 在此处的功能是结束命令文件的运行 4 2 2建立与修改命令文件命令格式 MODIFYCOMMAND 文件名 NOEDIT 该命令的功能是建立一个新的命令文件或修改一个已存在的命令文件 文件名 新建或需修改的命令文件名 命令文件的扩展名是 PRG 在该命令中可以不写扩展名 例编写命令文件PP PRG 完成下列操作 1 打开数据库文

7、件ZYDA DBF 2 拷贝一个数据库文件AA DBF 它与ZYDA DBF相同 3 打开AA DBF库 4 显示男职员记录 5 删除名字叫李莉的记录 6 显示数据库的剩余记录 首先在命令窗口输入 MODICOMMPP按回车键 然后在命令编辑窗口输入程序内容 SETTALKOFF 设置运行环境USEZYDA 打开数据库ZYDA DBFCOPYTOAA 拷贝数据库AA DBFUSEAA 打开数据库AA DBFLISTFOR性别 男 显示男职员记录LOCAFOR姓名 李莉 查找 李莉 记录 DELETE 给 李莉 记录做删除标记PACK 删除 李莉 记录LIST 显示AA DBF中剩余记录USE

8、关闭数据库AA DBFRETURN 结束程序运行 4 2 3运行命令文件编辑好的命令文件 可以直接在命令窗口中运行 命令格式 DO 文件名 WITH 参数表 DO命令的功能是运行一个命令文件 文件名即是要执行的命令文件名 可选项 WITH 参数表 的使用方法将在以后介绍 执行DO命令时 FoxPro首先将扩展名为 PRG的命令文件编译成扩展名是 FXP的目标代码文件 然后执行这个文件 若命令文件中有语法错误 系统将中断程序的编译执行 同时提示错误信息 用户根据提示 用MODIFYCOMM命令重新对命令文件进行编辑修改 4 3赋值与输入命令 在程序设计时 经常需要将各种类型的数据存储到变量中 这

9、是由赋值命令来完成的 FoxPro主要提供了两类赋值命令 一是在程序中用赋值语句直接给变量赋值 二是以人机对话方式通过键盘向变量输入值 4 3 1内存变量赋值命令STORE命令格式 STORE 表达式 TO 内存变量表 该命令的功能是将 表达式 的值存入 内存变量表 中的变量中去 另一种赋值命令 其命令格式是 内存变量 表达式 它是将 号右边 表达式 的值赋值给左边的 内存变量 例如 STORE5TOM 变量M的值为5STORE10TOX Y Z 将10分别存入变量X Y Z例如 X 5 将值5赋值给变量XY X 10 将内存变量X 10赋值给变量 4 3 2字符串输入命令ACCEPT命令格式

10、 ACCEPT 提示信息 TO 内存变量 该命令的功能是通过键盘输入的方式将字符型常量赋值给一个 内存变量 输入字符串时不要加双引号或单引号定界 否则界限符将当作字符串内容输入给变量 可选项 提示信息 的作用是对输入值的含义的说明 提示信息的内容要用双引号或单引号定界 执行该命令时 程序暂停运行 待用户从键盘给命令中的内存变量输入一个值且按回车键后 程序继续运行 例SETTALKOFFUSEZYDAACCEPT 输入姓名 TONAMELOCATEFOR姓名 NAMEDISPLAYRETURN 这是一个按姓名查询ZYDA DBF库中职员信息的程序 当执行到ACCEPT命令时 屏幕上显示 输入姓名

11、 等待用户输入待查询职员的姓名 比如要查刘宗武 只需把该名字输入 然后按回车键 变量NAME的值即是字符串 刘宗武 程序继续执行下一条语句 从姓名字段中找与NAME中字符串相同的值 找到后即显示其内容 4 3 3输入命令INPUT命令格式 INPUT 提示信息 TO 内存变量 该命令的功能与ACCEPT命令的功能相似 其区别是INPUT命令中的内存变量不但能接收字符型数据 还能接受数值型 日期型和逻辑型数据 需注意输入字符型数据时 必须使用定界符 例1按工资查询ZYDA DBF库中职员信息 SETTALKOFFUSEZYDAINPUT 输入工资数 TOPAYLOCATEFOR工资 PAYDIS

12、PLAYRETURN 运行该程序时 屏幕显示 输入工资数 用户输入查询的工资数后按回车键 程序查找出满足该工资数的第一个记录 并且显示这个记录的信息 例2按出生日期查询ZYDA DBF库中的信息 SETTALKOFFUSEZYDAINPUT 输入出生日期 TOCSRQLOCATEFOR出生日期 CSRQDISPLAYRETURN 4 3 4单字符输入命令WAIT命令格式 WAIT 提示信息 TO 内存变量 WINDOW TIMEOUT 数值表达式 该命令的功能是给内存变量赋一个字符 若可选项 TO 内存变量 省略时 该命令的作用是暂停程序执行 待用户按任意键后再继续执行WAIT的后继命令 可选

13、项 WINDOW 的作用是把提示信息中的内容显示在屏幕右上角的一个窗口内 省略此项 提示信息将顺序显示在屏幕已有显示内容的下一行 可选项 TIMEOUT 数值表达式 的功能是设置等待时间 数值表达式 的值即是等待的秒数 到时后自动继续执行WAIT后的下一条命令 数值表达式的值为零时 为无限等待 直至用户随意按一键码后 继续执行WAIT后面的命令 例编写下列程序 观察运行结果 SETTALKOFFUSEZYDAWAITSKIPDISPLAYWAIT 等待五秒钟 WINDOWIIMEOUT5SKIPDISEAYRETURN 4 4分支结物程序设计任何一种计算机语言程序的主体都由三种基本结构组成 顺

14、序结构 分支结构 循环结构 所谓顺序结构是逐条执行程序中的一系列命令 既不重复执行某些命令 也不绕过某些命令 它是程序的最基本结构 本章前几节列举的例题程序 都是顺序结构程序 4 4 1IF命令命令格式 IF 条件表达式 命令序列1 ELSE 命令序列2 ENDIF 执行该命令时 首先计算 条件表达式 的值 若值为 T 则执行 命令序列1 中的命令 然后顺序执行ENDIF后面的命令 若值为 F 则执行 命令序列2 中的命令 再顺序执行ENDIF后面的命令 例1键盘输入一个自然数 若是偶数则输出 偶数 否则输出 奇数 1 算法设计解决该问题首先要从键盘输入一个自然数 根据该数的奇偶性而分别输出

15、奇数 或 偶数 的提示信息 显然这是个分支程序 要用到IF命令 2 主要步骤步骤1 键盘输入一个自然数 步骤2 判断该数的奇偶性 若是奇数则执行步骤4 否则执行步骤3 步骤3 输入 偶数 提示信息 然后执行步骤5步骤4 输出 奇数 提示信息 然后执行步骤5 步骤5 程序结束 在程序流程图中 要判断变量X中的数是奇数还是偶数 要用到FoxPro提供的两个标准函数 取整函数 INT 数值表达式 取模函数 MOD 数值表达式1 数值表达式2 INT函数取 数值表达式 值的整数部分 MOD函数取 数值表达式1 除以 数值表达式2 的余数 例如 INT 12 9 值为12INT 16 3 值为5MOD

16、10 2 值为0MOD 10 4 值为2 若INT A B A B 则A能被B整除 若MOD A B 0 则A能被B整除 所以判断变量X中的数的奇偶性表达式为 若INT X 2 X 2或MOD X 2 0 则X是偶数 否则X是奇数 程序编码 SETTALKOFFINPUT 输入一个数 TOXIFINT X 2 X 2 偶数 ELSE 奇数 ENDIFRETURN 例2求AX2 BX C 0的实根 1 算法设计一元二次方程有两个根 或实根或虚根 当判别式B2 4AC 0时 有两个实根 否则有两个虚根 本题是求两个实根 故只讨论判别式是否非负问题 一元二次方程AX2 BX C 0的求根公式为 当B2 4AC 0时 有两个实根 否则无实根 2 主要步骤步骤1 给方程系数A B C赋值 步骤2 计算判别式B2 4AC的值 步骤3 判断B2 4AC是否非负 若非负则执行步骤4 否则执行步骤5步骤4 输出 两个实根 执行步骤6步骤5 输出 没有实根 信息 执行步骤6步骤6 程序结束 4 程序编码SETTALKOFFINPUT A TOAINPUT B TOBINPUT C TOCD B B 4 A

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 高等教育 > 大学课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号