第10讲程序设计基础及分支结构

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

--第10讲程序设计基础及分支结构一、复习二、程序设计基础三、程序设计顺序结构四、程序设计分支结构--Review:A=255B=’guangdongyixueyuan’DD={^2009-4-27}LOG=.t.?ALLTRIM([vfp6.0])?STR(5023.702,6)?YEAR(DATE())?DTOC(DATE())--Chapter7ProgramBase7.1programfilecreate&run7.2Orderstructureprogram7.3Branchstructureprogram7.4Circlestructureprogram7.5Modulestructureprogram7.6array&application--7.1programfilecreate&runSinglecommandworking(单命令工作方式)Programworking(程序工作方式):程序设计的两种编程思想1.Orientedprocedure2.ObjectOrientedprogramming--1.program(程序):程序是一组能够完成特定任务的命令序列。2.StructuredProgramming(程序结构):ThesecommandsandfunctionsenableyoutocontrolprogramexecutionandbranchingwithinaVisualFoxProprogram.--Syntax:ModifyCommand[FileName|?]Opensaneditingwindowsoyoucanmodifyorcreateaprogramfile.[example]Modifycommand程序7_6--7.1.2ProgramFileRunSyntax:DoProgramName1ExecutesaVisualFoxProprogramorprocedure.[Example]Do程序7_6--7.1.3AssistCommand1.Note(注释命令)Syntax1:Note[comments]Syntax2:*[Comments]Syntax3:&&[Comments]--[example]**************************************程序:职工档案管理系统**作者:高路**日期:2000年5月**Allrightreserved**************************************--Note设置系统运行环境Settalkoff&&关闭人机对话Setdefaulttod:\kk&&默认工作路径SetdatetoYMD&&指定日期格式--2.EndProgrammingCommandSyntax1:ReturnReturnscontroltothehigher-levelcallingprogram.Syntax2:ReturnMasterReturnscontroltothehighest-levelcallingprogram.Syntax3:CancelEndsexecutionofthecurrent(当前)VisualFoxProprogramfile.Syntax4:QuitEndsthecurrentVisualFoxProsessionandreturnscontroltotheoperatingsystem(windows2000).--3.Setenvironmentcommand(运行环境设置命令)settalkon/off&&命令执行的结果显示与否setstatuson/off&&屏幕下端状态行显示与否setescapeon/off&&按ESC键是否终止程序--7.1.4InputofProgramCommand1.StringInputCommand(字符串输入命令)syntax:Accept[string]toMemVar[example]accept“请输入要打开的数据表名:”totab_nameuse&tab_nameaccept“请输入被查找者姓名:’tonamelocatefor姓名=namedisplay--2.ExpressionInputCommandsyntax:Input[cMessageText]toMemVar[example]input‘请输入年龄为:’tonlRemarks:该命令可用于各种类型数据(N、C、D、L)的输入,内存变量的类型由所输入的数据的类型决定。输入各种类型的数据时要加相应的定界符。--3.SingleCharInputCommandSyntax:Wait[cMessageText];[toVarName][Windows];[TIMEOUTnSeconds]--[example]WAIT谢谢使用VFP!WINDOWStimeout34.FormatI/Ocommandsyntax1:@行号,列号SaycMessageText[GetVarName];[Rangeexpression1,expression2;[Valid条件]]|read--Remarks:在VFP中,屏幕左上角的坐标为(0,0),右下角的坐标与计算机系统的显示器坐标有关。行号,列号是指输出的位置,应该是数值表达式,且系统自动对其取整。GET变量必须和READ命令配套使用。--变量可以是内存变量或字段变量,若是内存变量,必须事先赋值;若是字段变量,则它所属的数据表文件必须已在当前工作区中打开。变量的类型和宽度决定了输入数据的类型和宽度。[Rangeexpression1,expression2规定了输入的数值型或日期型数据的范围。VALID(有效的)条件规定输入的变量值要符合的条件。--[example]usezgda&&[例7-5]appendblank@6,12say“请输入新职工的信息”font‘songti’,20@8,12say“姓名:”get姓名@10,12say“性别:”get性别valid性别$’男女’@12,12say“年龄:”get年龄range18,60read--小结:三条输入命令的异同ACCEPT命令只能接受字符型数据,不需定界符,输入完毕按回车键结束;WAIT命令只能输入单个字符,且不需定界符,输入完毕不需按回车键;INPUT命令可接受数值型、字符型、逻辑型、日期型和日期时间型数据,数据形式可以是常量、变量、函数和表达式,如果是字符串,需用定界符,输入完毕按回车键结束。--7.2OrderStructureProgramThreetypestructureprograms:1.Orderstructure2.Branchstructure3.Circlestructure--7.2.1basicstructure1.Orderstructure(顺序结构)最基本、最常见的程序结构形式,自始至终按照程序的先后顺序逐条执行。2.Branchingprogramstructure(分支程序结构)带有设定的条件,根据判断条件的成立与否来决定程序的流向。3.Circleprogramstructure(循环程序结构)在一定条件下反复执行的一段程序。--7.2.2Orderstructureprogram[例7-6]UsezgdaAccept‘请输入查询姓名:’toxmLocatefor姓名=xmClear?’姓名:’+姓名return--框架:⑴Note(说明部分):多为一组注释语句,用以指出程序的名称功能等信息⑵Initialization(初始化部分):多用SET命令设置程序运行时的系统状态和参量初值⑶Main(程序主体部分):整个程序的核心⑷Revert(还原部分):在程序完成其预定任务后,将当前的工作环境恢复到执行该态。如关闭各种文件,还原系统设置等⑸Return(程序的退出):程序运行完毕,可根据需要返回VFP应用程序窗口或退出VFP(返回操作系统)--[Example]Note这是一个练习程序,程序名为exam.prgClearSettalkoffSetdefaulttod:\vfp6SetcenturyonSetdatetoymd--Opendata职工管理Usezgda*插入一条新记录,并统计当前职工人数Appendblank@15,6say‘请输入姓名:’get姓名@17,6say‘请输入出生日期:’get出生日期@19,6say‘请输入职称:’get职称@21,6say‘请输入基本工资:’get基本工资read--clearCountalltonrs?’现有职工的人数是’+str(nrs,6)Closeall&&关闭数据库SetdateansiSettalkonReturn--7.3BranchStructureConditionallyexecutesasetofcommandsbasedonthevalueofalogicalexpression.7.3.1singlebranching7.3.2doublebranching7.3.3branching7.3.4Multibranchingstructure--7.3.1SingleBranchingIF...ENDIFCommandSyntax:IfexpLCommandsEndifRemark:expL:Specifiesthelogicalexpressionthatisevaluated.IfexpLevaluatestotrue(.T.),commandsfollowingareexecuted.--[example]查找并显示“学生表”中某学生的有关情况。Accept‘请输入查找的学生姓名:’tocNameLocatefor姓名=cNameIffound()?”学号:”+学号Endif--7.3.2DoubleBranchingSyntax:IFlExpressionCommands1ELSECommands2ENDIF[Example]查找并显示“学生表”中某学生的有关情况,如果没有查找到则显示提示信息。思考题?求一元二次方程的两根:Ax2+Bx+C=0--7.3.3Branchingnesting嵌套的分支结构,使程序流程出现多重走向。在一个IF语句中包含另一个IF语句的程序结构,称为IF语句的嵌套。--Syntax:if…elseif…else…endifendif--(1)在每一嵌套层中,IF-ELSE-ENDIF必须一一对应,互相匹配;(2)编程时要做到内外层分支结构层次分明--7.3.4.MultiBranchingStructureDOCASE...ENDCASECommandSyntax:DOCASECASElExpression1Commands1CASElExpression2Commands2...CASElExpressionNCommandsNOTHERWISECommandsN+1ENDCASE--(1)最先成立的那个CASE条件,接着执行ENDCASE后面的程序语句。(2)都不成立,则去执行OTHERWISE的语句序列,也可以没有OTHERWISE选项。(3)DOCASE和ENDCASE必须成对出现(4)可以自我嵌套,或与IF语句相互嵌套使用。--[example]输入某学生的成绩,并判断其成绩的等级,分为优、良、中、差、不合格5等。(1)If与endif,Docase与endcase配对出现(2)采用缩进(锯齿形)的书写方式--上机实验十一、实验目的1.理解与掌握程序设计的基本编程方法;2.熟悉操作程序文件,编写试行程序文件;3.掌握基本程序的顺序结构和分支结构,重点介绍分支结构的操作举例。--二、实验步骤1.设置相应的默认的工作路径,例:setdefaulttod:vfp62.按照程序文件的基本结

1 / 40
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功