Visual FoxPro程序设计-电子教案-杜春敏 VFP第5章

上传人:E**** 文档编号:89400267 上传时间:2019-05-24 格式:PPT 页数:133 大小:3.36MB
返回 下载 相关 举报
Visual FoxPro程序设计-电子教案-杜春敏 VFP第5章_第1页
第1页 / 共133页
Visual FoxPro程序设计-电子教案-杜春敏 VFP第5章_第2页
第2页 / 共133页
Visual FoxPro程序设计-电子教案-杜春敏 VFP第5章_第3页
第3页 / 共133页
Visual FoxPro程序设计-电子教案-杜春敏 VFP第5章_第4页
第4页 / 共133页
Visual FoxPro程序设计-电子教案-杜春敏 VFP第5章_第5页
第5页 / 共133页
点击查看更多>>
资源描述

《Visual FoxPro程序设计-电子教案-杜春敏 VFP第5章》由会员分享,可在线阅读,更多相关《Visual FoxPro程序设计-电子教案-杜春敏 VFP第5章(133页珍藏版)》请在金锄头文库上搜索。

1、1,主编 杜春敏,Microsoft,Visual FoxPro 程序设计,2,第5章 结构化程序设计,3,VFP是一种高级语言,它提供了三种工作方式:交互方式、程序方式和菜单方式。前面所学的命令就是交互式,本章介绍程序执行方式。,4,程序是指能够完成特定任务的命令序列。这些命令序列以文件形式存入磁盘,这个文件称为程序文件或命令文件,其扩展名为.prg。,5,5.1程序文件的建立与修改,5.1.1 程序的创建 在VFP中,创建程序可以使用菜单方式或命令方式。,6,1. 菜单方式, 选择“文件”菜单下的“新建(N)”,或单击工具栏中的“新建”按钮,或者直接按热键“Ctrl+N”,打开“新建”对话

2、框; 在“新建”对话框中选择“程序”,再单击“新建文件”按钮,弹出程序编辑窗口; 在程序编辑窗口中录入程序内容; 程序录入完毕,按Ctrl+W保存文件,并关闭程序编辑窗口,返回VFP主窗口。,7,2命令方式,格式:MODIFY COMMAND文件名 功能:打开一个程序编辑窗口,建立或修改程序文件。 说明: 文件名缺省,则新建的程序文件默认文件名为程序1、程序2、,如图5-1所示。,8,图5-1 缺省文件名的命令方式打开的程序编辑窗口,9,5.1.2 程序的编辑及运行,1.程序的打开及编辑 我们通常用如下方法打开程序文件并进行编辑修改: (1) 菜单方式 (2) 命令方式,10,(1)菜单方式,

3、选择“文件”菜单下的“打开(O)”,或单击工具栏中的“打开”按钮,或者直接按快捷键“Ctrl+O”,打开“打开”对话框。在文件类型一栏选择“程序*.prg;*.spr;*.mpr;*.qpr)”,再从查找范围中找到相关文件名,单击选中,最后单击“确定”按钮即可。在打开的程序编辑窗口可对源程序进行修改。,11,(2)命令方式,直接用MODIFY COMMAND文件名,即可打开相关文件进行编辑修改。 注:VFP程序是命令行的序列,每条命令都必须以回车键结尾,一行只能写一条命令,若一条命令很长需分行写时,分行处要添加续行符“;”。,12,2.程序运行,程序编辑修改后,最好先保存。保存后便需要运行来验

4、证结果。运行程序的方法通常有以下几种: (1)菜单方式 (2)命令方式,13,(1)菜单方式: 选择“程序”菜单下的“运行”(或按快捷键Ctrl+D),弹出“运行”对话框; (2)命令方式 格式:DO 功能:执行指定文件名的程序。,14,注:可以包含路径、程序文件的扩展名。缺省路径为当前文件夹。 程序编辑窗口为当前活动窗口时,执行程序也可使用工具栏中的“!”工具按钮或按快捷键“Ctrl+E”。,15,例5-1:通过键盘输入两个数,计算两个数的乘积,并输出计算结果。,分析:按题示,步骤如下:,操作: *MODI COMM EX5-1.PRG SET TALK OFF INPUT 输入数A: TO

5、 A INPUT 输入数B: TO B ?A*B SET TALK ON RETURN 存盘:Ctrl+W,开始,求积:,结束,A*B,?A*B,输入两个数,输出结果:,A、B,16,补充: 1.显示xs.dbf中在1985年以后出生的记录。 2.显示xs.dbf中所有是党员的记录。,DISPLAY FOR 出生年月1985/12/31,LIST FOR 党员否,党员否,或:DISPLAY FOR year(出生年月)1985,17,18,5.2 简单的交互式输入/输出命令,1.非格式化输入命令 1) WAIT命令(输入单个字符语句) WAIT TO WINDOWTIMEOUT 作用:接收通过

6、键盘输入的一个字符,保存到指定的内存变量。 注:缺省,屏幕显示:“按任意键继续”,19,2)ACCEPT命令(输入字符串语句) ACCEPT TO 3)INPUT命令(输入任意型数据) INPUT TO 作用:接收通过键盘输入的数据,保存到指定的内存变量。,操作,20,注: ACCEPT命令只能接收字符型数据,不需 加定界符引号或方括号,输入完成后按回车; INPUT命令可以接收N型,C型,D型,L型, 除N型外,其他各型均要用定界符括起; WAIT命令只能接收一个字符,且不需按回车。,21,2.非格式化输出命令 1)?命令 ? 计算表达式的值,并把表达式的值在当前 行的下一行的首位输出. 2

7、)?命令 ? 计算表达式的值,并把表达式的值在当前行的当前光标位置输出.,22,3)文本输出语句 TEXT ENDTEXT 功能:将文本内容原样输出。 说明:TEXT和ENDTEXT各独占一行,且必须成对使用。,23,3.格式化输入/输出命令 (1)简单的格式输出命令 SAY ,例如:输出计算机的系统日期命令为: 10,30 SAY “今天日期是:“+DTOC(DATE() 假如今天日期是2012年1月4日,命令执行后,结果如图5-2所示:,24,图5-2 格式输出示例,25,(2)简单的格式输入命令 SAY GET READ,26,例5-2:利用GETREAD语句修改XS表的当前记录。 *E

8、X5-2.PRG SET TALK OFF CLEAR USE XS 3,15 SAY “学号:“ GET 学号 3,33 SAY “姓名:“ GET 姓名 5,15 SAY “出生日期:“ GET 出生日期 5,39 SAY “专业:“ GET专业 7,15 SAY “班级:“ GET班级 READ USE SET TALK ON,思考:若要修改指定某一条记录,对该程序作何修改?,27,5.2.2 常用的程序辅助命令 1.注释命令: 行首注释: NOTE* 行尾注释:& ,28,2. 中止命令 CANCEL 结束程序运行,清除内存变量,返回命令窗口 QUIT 结束程序运行,返回WINDOWS

9、 SUSPEND 暂停程序执行,返回命令窗口。输入 RESUME继续执行,29, RETURN TO MASTER/TO 结束一个程序或自定义函数返回调用程序或命令窗口.,30,3.状态设置命令 设置会话状态命令 SET TALK ON/Off 打开/关闭人机对话框,有些命令(AVERAGE,SUM等)在执行时会返回一些有关执行状态的信息。,31,4.清屏命令 (1) CLEAR 清除VFP主窗口或当前窗口信息。 (2) CLEAR TO 清除一个矩形区域。,32,33,5.3.1 顺序结构,一、结构化程序的基本结构 VFP是一种结构化的程序设计语言,它有三种基本结构:顺序结构 、分支结构 、

10、循环结构 顺序结构 按语句出现的先后顺序执行。,A,B,入口,入口,出口,出口,34,分支结构,根据条件真假,选择两个或多个分支中的一个分支来执行。,入口,出口,入口,出口,35,循环结构,根据条件真假,重复执行一个语句块。,条件,B,真,假,B,真,条件,入口,入口,出口,出口,36,二、结构化程序设计的特点 1、只有一个入口; 2、只有一个出口; 3、无死语句; 4、无死循环。,三、结构化程序设计的方法 1、自顶向下; 2、逐步求精; 3、模块化。,四面向对象的程序设计技术 VFP提供了面向过程和面向对象的程序设计方法,37,五.VFP程序设计的步骤,分析任务、提出解决问题的办法 数据库设

11、计 编制程序流程图 编制程序 运行调试 编制说明文档 系统维护,常用流程图符号,38,5.3.2 分支结构,1.单向分支/双向分支 (1)命令格式: IF ELSE ENDIF,39,(2)执行方法: 在两个命令序列中选择一个执行,即如果条件成立,执行IFELSE之间的命令序列B1,然后执行ENDIF后面的命令;如果条件不成立,执行ELSEENDIF之间的命令序列B2 ,再执行ENDIF后面的命令。,40,如果没有ELSE之后的命令序列B2,这就是单向分支语句,那么条件不成立时,则直接跳转到ENDIF后面的语句执行。,41,例5-3:用键盘输入学号,在XS.DBF中查找指定学号的记录,找到则显

12、示该记录;否则不作任何操作。,*MODI COMM EX5-3.PRG SET TALK OFF CLEAR ACCEPT “请输入学号:“ TO X USE XS LOCATE FOR 学号=X IF FOUND() DISP ENDIF USE RETU,开始,打开数据表XSDA,结束,查找与输入学号相同的记录,真,输入学号:,显示该记录,思考:如何表示找到记录?,分析:,找到吗?,假,FOUND(),42,几点说明,a.IF-ENDIF要成对出现 b.ENDIF要独占一行 c.不论条件成立与否ENDIF之后的语句总是 要执行的。,43,例5-4:已知A、B、C,求解一元二次方程: AX2

13、+BX+C=0(A0)的实根,并显示;若没有实根,则显示“方程无实根!“.,分析:通过键盘输入系数A、B、C,当B2-4AC 0时,方程有实根。 设:DB*B-4*A*C X1,2=(-BSQRT(D)/(2*A),开始,结束,真,输入系数A,B,C,显示两个根,D 0?,假,计算D:D=B*B-4*A*C,计算两个根,显示方程无实根,44,*程序名:EX5-4.PRG SET TALK OFF CLEAR INPUT A= TO A INPUT B= TO B INPUT C= TO C D=B*B-4*A*C,IF D=0 X1=(-B+SQRT(D)/(2*A) X2=(-B-SQRT(

14、D)/(2*A) ?“X1=“,X1,“X2=“,X2 ELSE ?方程无实根! ENDIF SET TALK ON CANCEL,操作,45,练习: 程序填空。下面是对XS.DBF中已知学号的记录作删除标记的程序:,SET TALK OFF ACCEPT “输入待删除学生的学号:“ TO X USE XS (1) 1) A)FIND X B) SEEK X IF (2) C)LOCATE X D) LOCATE FOR 学号=X DELETE ENDIF USE 2) A)EOF() B)NOT EOF() RETURN C)EOF()=.T. D)EOF()=.F.,D,B或D,46,问题

15、:上述IF语句可以完成对于两种情况的选择, 如果有多种情况,如何处理?,47,2.IF语句的嵌套 嵌套:是指在一个结构中包含另一个结构。 如: IF语句嵌套是在IF- ENDIF结构中包含IF- ENDIF 结构。,格式: IF ELSE IF ELSE ENDIF ENDIF,48,注:在IF语句嵌套中,要正确划分IF与 ENDIF结构。 第一个ENDIF总与离它最近的IF语句 匹配。,49,例5-5:求个人所得税 公民收入在3000元到6000元(含6000元)的税率为20%,6000元到9000元(含9000元)的税率为30%,9000元以上为40%,低于3000元(含3000元)的不纳税。,50,分析: 可分为4种情况: 收入 税率 03000 0 30006000 20% 60009000 30% 9000以上 40%,用SR表示收入,ZS表示所得税。 思考:怎样计算所得税?,所得税ZS=SR*税率,51,开始,结束,真,输入个人收入,显示个人所得税,分析:,SR9000?,假,计算所得税 ZS=SR*0.4,真,SR6000?,假,计算所得税 ZS=SR*0.3,真,SR3000?,

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

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

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