结构化程序设计精选培训课件

上传人:日度 文档编号:149738129 上传时间:2020-10-29 格式:PPT 页数:80 大小:428KB
返回 下载 相关 举报
结构化程序设计精选培训课件_第1页
第1页 / 共80页
结构化程序设计精选培训课件_第2页
第2页 / 共80页
结构化程序设计精选培训课件_第3页
第3页 / 共80页
结构化程序设计精选培训课件_第4页
第4页 / 共80页
结构化程序设计精选培训课件_第5页
第5页 / 共80页
点击查看更多>>
资源描述

《结构化程序设计精选培训课件》由会员分享,可在线阅读,更多相关《结构化程序设计精选培训课件(80页珍藏版)》请在金锄头文库上搜索。

1、第 7 章结构化程序设计,理解程序的概念、掌握程序的建立与运行方法 掌握程序设计中常用的输入、输出语句 理解并掌握程序的基本控制结构:顺序结构、分支(选择)结构、循环结构 理解并掌握过程与用户自定义函数,教 学 目 标,程序的概念、程序的建立与运行方法 程序设计中常用的输入输出语句 程序的控制结构:顺序结构、分支(选择)结构、循环结构 过程的概念、用户自定义函数的目的与方法,难点是:程序设计算法、分支程序设计、循环程序设计,重 点、难 点,7.1程序的概念 (1)定义:程序是能够完成一定任务的命令的集合。这组命令被存放在称为程序文件或命令文件的文本文件中,VFP默认的程序文件的扩展名为PRG。

2、 程序方式与单命令处理方式有以下优势: 可以利用编辑器,方便地输入、修改和修改程序。 可以用多种方式、多次运行程序。 可以在一个程序中调用另一个程序。,7.1 程序的概念,SET TALK OFF CLEAR OPEN DATABASE student &打开数据库 USE jbqkb &打开表 LIST CLOSE DATABASE &打开数据库、表 SET TALK ON RETURN,示例程序:,程序的书写规则和说明:,程序一般以SET TALK OFF开头,以SET TALK ON、RETURN语句结束。 SET TALK ON|OFF的意义是打开或关闭人机会话方式,控制VFP信息在主

3、窗口、状态栏或用户自定义的窗口里是否显示。 &是在程序中插入的命令注释,注释为非执行代码,不影响程序的功能。以NOTE或*开头的代码行也是注释行。注释行能增强程序文件的易读性。 VFP中的注释行显示为绿色。 程序中每条命令以回车键结尾,一行只能写一条命令。若命令太长时需要分行书写,在一行末尾键入续行符“;”,再按回车键。,程序中常出现CANCEL、RETURN、QUIT、DO 等命令,其意义如下: CANCEL:终止程序运行,清楚所有私有变量,返回命令窗口。 RETURN:结束当前程序的运行,返回调用它的上级程序,若无上级则返回到命令窗口。 QUIT:退出VFP系统。 DO:转去执行另一个程序

4、。,程序的书写规则和说明:,(1)建立源程序有多种方法,常用的有: 执行“文件新建”命令,在对话框中选取择“程序”文件。 在“项目管理器”中选定“代码”选取项卡中的“程序”项,选择“新建”按钮。 在“命令”窗口执行命令: MODIFY COMMAND .|? 在编辑过程中注意保存程序。修改程序的方法与建立程序的方法类似。,7.1.2. 程序的建立与运行,(2)程序的运行方法: 执行“程序运行”命令,在“运行”对话框中选择要运行的程序名 在“项目管理器”中选定“代码”选取项卡中“程序”项下的程序,选择“运行”按钮 在“命令”窗口中,输入: DO 选择多条命令,然后单击鼠标右键,在弹出的快捷菜单菜

5、单中选择“运行所选区域”,可运行程序的一部分。,7.1.2. 程序的建立与运行,VFP程序文件通过编译、连编,可产生不同的目标代码文件,以不同的扩展名标识。用DO命令执行程序文件时,如果没有指定扩展名,系统将按以下顺序执行某种目标代码文件:EXE(VFP的可执行文件)、APP(VFP的应用程序文件)、FXP(VFP的编译文件)、PRG(VFP的源程序文件)。,7.1.3.常用的输入输出语句,(1)ACCEPT命令 【格式】ACCEPT TO 【功能】 在程序执行过程中,将用户交互式输入的内容作为字符串赋值给指定内存变量。 【说明】若选用提示信息,系统将先显示提示信息的值作为提示信息,并将输入的

6、字符串赋值给。 该命令只能接收字符串,而不需加定界符,否则系统将把定界符作为字符串的一部分。 若不输入任何字符而直接按回车键,系统将把空串赋值给指定的内存变量。,SET TALK OFF CLEAR ACCEPT “请输入数据库名:” TO AAA OPEN DATABASE &AAA ACCEPT 请输入表名 TO BBB USE &BBB LIST USE SET TALK ON RETURN,【例7-1】编程从键盘输入某数据库的文件名,要求打开该数据库、表并显示其内容。,(2)INPUT命令 【格式】INPUT TO 【功能】在程序执行过程中,将用户输入的内容赋值给指定内存变量 【说明】

7、若选用提示信息,系统将先显示提示信息的值作为提示信息,并将输入的数据赋值给。 可以输入各种类型数据,也可以是常量、变量、函数或表达式等形式,按回车键结束输入。 输入非数值型数据要加定界符。如输入逻辑型常量时要用圆点定界(.T.)、输入日期型常量要用大括号2007-05-10等。,【例7-2】从键盘输入两个任意正数,编程求以两数为边长的长方形面积。程序文件名为PROG2.PRG SET TALK OFF CLEAR INPUT 长方形一边的长为: TO A INPUT 长方形另一边的长为: TO B S=A*B ? 长方形的面积为: , S SET TALK ON RETURN,(3)WAIT命

8、令 【格式】WAIT 提示信息 TO WINDOW AT ,NOWAITCLEAR|NOCLEARTIMEOUT 【功能】显示信息并暂停程序执行,当按下任意键或单击鼠标后继续执行。 【说明】若选用提示信息,系统将先显示提示信息的值作为提示信息,并将输入的单字符赋值给。若不选用提示信息,则显示默认的提示信息“按任意键继续”。 用来保存用户键入的单字符,其类型只能是字符型。若不选TO 短语,键入的单字符不保留。,如果指定WINDOW子句,则会出现一个WAIT提示窗口,在窗口中显示提示信息。提示窗口一般定位于WINDOW子句,也可用AT短语指定其在主窗口中的位置。 若同时选用NOWAIT短语和WIN

9、DOW子句,系统不等待用户按键,直接向下执行。 若选用NOCLEAR短语,则不关闭提示窗口,直到用户执行下一条WAIT WINDOW命令或WAIT CLEAR命令为止。 TIMEOUT 选项指在中断WAIT 命令之前,等待键盘或鼠标输入的秒数,一旦超时就不再等待用户按键,自动向下执行。,【例7-3】用WAIT 命令在信息提示窗口显示: 谢谢使用Visual FoxPro! WAIT “谢谢使用Visual FoxPro!” WINDOWS TIMEOUT 10,三条输入命令的异同 ACCEPT命令只能接受字符型数据,不需定界符,输入完毕按回车键结束; WAIT命令只能输入单个字符,且不需定界符

10、,输入完毕不需按回车键; INPUT命令可接受数值型、字符型、逻辑型、日期型和日期时间型数据,数据形式可以是常量、变量、函数和表达式,如果是字符串,需用定界符,输入完毕按回车键结束。,4)? | ? 输出命令 【格式】? | ? 表达式1 ,表达式2 【功能】计算表达式的值,输出计算结果。 【说明】?计算表达式的值,输出一个回车换行符,再将计算结果输出到主窗口;若省略表达式,则显示或打印一空行。 ?功能同上,但不输出回车换行符,即同行输出。,4.格式化输入输出命令 【格式】 SAY GET 【功能】在指定的行和列的位置上输出表达式的值,同时可以对GET后面的变量值进行修改或重新输入。 【说明】

11、行号、列号指信息在屏幕上显示的位置,第1行、第1列均为0。 表达式通常为字符串。 若选用GET,变量必须先赋初值,并反向显示。 若要编辑GET变量,必须用READ激活。,【例7-3】设有如下自由表sb.dbf,记录内容如下,编程:能根据记录号修改某设备的价格与部门编号。 编号 名称 部门 价格 016-1 车床 21 1121100 016-2 钻床 21 2111000 016-3 磨床 22 1121300 016-4 微机 23 11000,Set talk off Clear &清屏幕 use sb jlh=1 &设定get 变量的初值 2,10 say “请输入记录号:” get j

12、lh read &激活get 子句变量 jlh 用于编辑 go jlh &指向第 jlh 条记录 4,10 say “请修改第”+str(jlh,1)+ “台设备的数据” &输出字串 6,10 say “价格” get 价格 &价格:字段变量 8,10 say “部门” get 部门 read &激活get子句变量,用于编辑 set talk on,7.2 程序的基本结构,Visual FoxPro系统的程序有两个特点:一是程序控制流模式,由顺序、分支、循环三种基本结构构成。二是面向对象可视化的结构程序模块,在每个模块的内部也是由程序控制流组成。常见的控制结构如下: 1顺序结构 顺序结构是在程

13、序执行时,根据程序中语句的书写顺序依次执行的命令序列。Visual FoxPro系统中的大多数命令都可以作为顺序结构中的语句。 2分支结构 分支结构是在程序执行时,根据不同的条件,选择执行不同的程序语句,用来解决有选择、有转移的诸多问题。,3循环结构 循环结构则能够使某些语句或程序段重复执行若干次。如果某些语句或程序段需要在一个固定的位置上重复操作,使用循环是最好的选择。 在许多应用程序中,有一些程序段需要反复执行多次,这些程序段不在一个固定的位置上,而是分散在程序的许多位置上重复执行,可将其与嵌入它的程序分开,形成独立的程序序列,待使用时再调入程序中,以实现不同位置上的重复操作。这样做增强了

14、程序的可读性和模块化。我们称这种具有独立功能而且可以被其它程序调用的程序序列为过程。,7.2.1 分支结构,分支结构形式有如下三种: (1)单向分支 单向分支语句,即根据用户设置的条件表达式的值,决定某一操作是否执行。 【格式】 IF条件表达式 命令行序列 ENDIF 【功能】该语句首先计算条件表达式的值,当条件表达式的值为真时,执行命令行序列;否则,执行ENDIF后面的第一条命令。,【例7-4】求解一般一元二次方程AX2BXC0的实根。程序如下: SET TALK OFF CLEAR INPUT TO A INPUT TO B INPUT TO C DB2-4*A*C IF D=0 X1=(

15、-B+SQRT(D)/(2*A) X2=(-B-SQRT(D)/(2*A) ? X1,X2 ENDIF SET TALK ON,双向分支语句,即根据用户设置的条件表达式的值,选择两个操作中的一个来执行。 【格式】 IF条件表达式 命令行序列1 ELSE 命令行序列2 ENDIF 【功能】该语句首先计算条件表达式的值,当条件表达式的值为真时,执行命令行序列1中的命令;否则,执行命令行序列2中的命令;执行完命令行序列1或命令行序列2后都将执行ENDIF后面的第一条命令。,【例7-5】编写一密码校验程序(假设密码为ABC)。 SET TALK OFF CLEAR ACCEPT “请输入您的密码:”

16、TO AAA IF AAA=”ABC” CLEAR ? ”欢迎使用本系统!” ELSE ?”密码错误!” WAIT QUIT ENDIF SET TALK ON,解一元二次方程的流程图,流程图,(3)多向分支 多向分支语句,即根据多个条件表达式的值,选择执行多个操作中的一个对应执行 。 (1)【格式】 DO CASE CASE条件表达式1 命令行序列1 CASE条件表达式2 命令行序列2 CASE条件表达式N 命令行序列N OTHERWISE 命令行序列N+1 ENDCASE,【功能】该语句根据给出的N个条件表达式的值,选择N+1个命令行序列中的一个执行。当所有CASE中条件表达式的值都是假时,如果有OTHERWISE项,则执行命令行序列N+1,再执行ENDCASE后面的第一条命令;否则,直接执行ENDCASE后面的

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

当前位置:首页 > 高等教育 > 专业基础教材

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