您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 质量控制/管理 > VisualFoxPro90程序设计基础第5章程序设计基础
NANJINGUNIVERSITYOFINFORMATIONSICENCE&TECHNOLOGY数据库技术及应用南京信息工程大学计算机与软件学院主讲:刘生NANJINGUNIVERSITYOFINFORMATIONSICENCE&TECHNOLOGY第五章VFP程序设计基础数据库技术及应用南京信息工程大学计算机与软件学院主讲:刘生2019/8/27第五章VFP程序设计基础主讲:南京信息工程大学计算机与软件学院刘生3教学目的和要求了解程序设计的一些基本概念;熟悉程序设计的基本方法和步骤;掌握VisualFoxpro中三种基本控制结构的实现方法和使用方法;掌握自定义函数和过程的使用。2019/8/27第五章VFP程序设计基础主讲:南京信息工程大学计算机与软件学院刘生4教学重点结构化程序设计中的三种控制结构;自定义函数和过程的使用;参数传递的不同类型。2019/8/27第五章VFP程序设计基础主讲:南京信息工程大学计算机与软件学院刘生5章节内容5.1VisualFoxpro程序设计基础5.1.1基本概念5.1.2程序设计方法与步骤5.1.3顺序程序设计5.1.4选择结构程序设计5.1.5循环结构程序设计2019/8/27第五章VFP程序设计基础主讲:南京信息工程大学计算机与软件学院刘生6章节内容5.1.6子程序、过程与自定义函数5.1.7过程文件5.1.8自定义函数5.2程序设计综合应用举例2019/8/27第五章VFP程序设计基础主讲:南京信息工程大学计算机与软件学院刘生75.1.1基本概念程序是使计算机完成某种功能的指令序列。程序可分为源语言程序和可执行程序。程序设计是指设计、编制、调试程序的方法和过程。程序设计方法主要有结构化程序设计与面向对象设计之分。2019/8/27第五章VFP程序设计基础主讲:南京信息工程大学计算机与软件学院刘生85.1.1基本概念执行程序就是依次执行其中的每一条命令,直至全部命令执行完毕。程序通常以文件形式存放在磁盘上,在VisualFoxPro中,程序文件也称为命令文件,其扩展名为.prg。程序文件一旦建立,可以多次重复执行。2019/8/27第五章VFP程序设计基础主讲:南京信息工程大学计算机与软件学院刘生95.1.2程序设计方法与步骤程序设计一般包含以下几个步骤:(1)分析问题,确定需求,对能够建立数学模型的问题,根据需求建立数学模型。2019/8/27第五章VFP程序设计基础主讲:南京信息工程大学计算机与软件学院刘生105.1.2程序设计方法与步骤程序设计一般包含以下几个步骤:(2)确定数据结构和算法。算法由三种基本控制结构描述,主要描述程序的控制流程和工作过程,数据结构是对程序中数据的描述。在高级程序设计语言中,数据结构通过数据类型体现,而算法可用任何形式的工具来描述,通常有流程图、N-S图和伪代码等。其中流程图是最早提出的用图形表示算法的工具,它具有直观性强、便于阅读等特点,是采用较多的算法描述工具。2019/8/27第五章VFP程序设计基础主讲:南京信息工程大学计算机与软件学院刘生115.1.2程序设计方法与步骤流程图的基本图形元素起止框处理框判断框输入输出框连接点流程线2019/8/27第五章VFP程序设计基础主讲:南京信息工程大学计算机与软件学院刘生125.1.2程序设计方法与步骤程序设计一般包含以下几个步骤:(2)确定数据结构和算法。计算机能够实现的基本功能操作包括以下四种类型:逻辑运算:逻辑与、逻辑或、逻辑非;算术运算:加、减、乘、除;数据比较:大于、小于、等于、不等于、大于等于、小于等于;数据传送:输入、输出、赋值。2019/8/27第五章VFP程序设计基础主讲:南京信息工程大学计算机与软件学院刘生135.1.2程序设计方法与步骤(3)编制程序。(4)调试程序。2019/8/27第五章VFP程序设计基础主讲:南京信息工程大学计算机与软件学院刘生145.1.3顺序程序设计顺序结构是程序设计中最简单、最常用的基本结构,同时也是程序设计中最基本的控制结构。该结构中,指令按照出现的先后顺序依次执行。它是任何程序的主体,即使在选择结构或循环结构内部中,也大多为顺序结构程序段。2019/8/27第五章VFP程序设计基础主讲:南京信息工程大学计算机与软件学院刘生151.数据输出命令格式:?/??[表达式表]功能:计算并输出表达式的值。说明:①命令中的表达式可以包含字段变量和内存变量,表达式之间以逗号分隔。②两个命令的区别在于:?命令先换行,再开始输出;??命令不换行即开始输出。③?后面若没有表达式表,则只进行换行操作。5.1.3顺序程序设计2019/8/27第五章VFP程序设计基础主讲:南京信息工程大学计算机与软件学院刘生162.语句的续行当一条语句或一个命令很长时,在代码编辑窗口或命令窗口阅读时将不便查看,使用滚动条又比较麻烦。这时,就可以使用续行功能,用分号“;”将较长的语句分为两行或多行。作为续行符的分号只能出现在行尾。5.1.3顺序程序设计2019/8/27第五章VFP程序设计基础主讲:南京信息工程大学计算机与软件学院刘生173.注释命令为增加程序的可读性,常常要在程序中加入一些注释,对程序中使用的变量、算法进行说明。注释仅起说明作用,不参与程序运行。VisualFoxPro提供了2种注释的方法其一:在程序行开头加“*”表示本行为注释行其二:命令行中字符“&&”后面的部分为注释5.1.3顺序程序设计2019/8/27第五章VFP程序设计基础主讲:南京信息工程大学计算机与软件学院刘生18试编写一个程序完成两个变量内容的交换。分析:要完成两个变量内容的交换,需引入第三个变量作为临时变量,需要三个步骤来完成交换,设变量a、b分别保存不同的值,引入第三个变量c,则需下述步骤:(1)将变量a赋值给c;(2)将变量b赋值给a;(3)将变量c赋值给b;5.1.3顺序程序设计2019/8/27第五章VFP程序设计基础主讲:南京信息工程大学计算机与软件学院刘生19代码如下:a=1b=2?a,bc=aa=bb=c?a,b5.1.3顺序程序设计2019/8/27第五章VFP程序设计基础主讲:南京信息工程大学计算机与软件学院刘生20顺序结构按程序中的语句顺序依次执行。例STORE4TOrS=3.14*r*r?S5.1.3顺序程序设计2019/8/27第五章VFP程序设计基础主讲:南京信息工程大学计算机与软件学院刘生215.1.4选择结构程序设计选择结构根据给定的条件是否为真(即条件成立)决定可以执行的分支语句。在VFP中,实现分支结构的语句分支语句IF…ELSE…ENDIF多分支语句DOCASE…ENDCASE2019/8/27第五章VFP程序设计基础主讲:南京信息工程大学计算机与软件学院刘生225.1.4选择结构程序设计1.IF…ELSE…ENDIF结构2019/8/27第五章VFP程序设计基础主讲:南京信息工程大学计算机与软件学院刘生235.1.4选择结构程序设计IF结构示例之一STORE70TOCJIFCJ=60?”及格”ENDIFcj=70CJ60?输出“及格”.T..F.2019/8/27第五章VFP程序设计基础主讲:南京信息工程大学计算机与软件学院刘生245.1.4选择结构程序设计IF结构示例之二STORE70TOCJIFCJ=60?”及格”ELSE?”不及格”ENDIFcj=70CJ60?输出“及格”输出“不及格”.T..F.2019/8/27第五章VFP程序设计基础主讲:南京信息工程大学计算机与软件学院刘生25闰年问题一个年份满足以下条件之一即为闰年:能被4整除且不能被100整除能被400整除nYear=2005IFMOD(nYear,4)=0ANDMOD(nYear,100)0ORMOD(nYear,400)=0?”是闰年“ELSE?”不是闰年”ENDIF2019/8/27第五章VFP程序设计基础主讲:南京信息工程大学计算机与软件学院刘生26判断某一年是否是闰年。Y=2005IFy/4=INT(y/4)ANDy/100INT(y/100)ORy/400=INT(y/400)?STR(y)+'是闰年'ELSE?STR(y)+'不是闰年'ENDIF5.1.4选择结构程序设计2019/8/27第五章VFP程序设计基础主讲:南京信息工程大学计算机与软件学院刘生273.多分支选择结构5.1.4选择结构程序设计2019/8/27第五章VFP程序设计基础主讲:南京信息工程大学计算机与软件学院刘生28说明:⑴DoCase和第一个Case子句之间不能插入任何命令。⑵DoCase和Endcase必须配对使用,且DoCase、Case、Otherwise和Endcase各子句必须各占一行。⑶命令组中可含有任何VisualFoxPro命令,包括可嵌套DoCase命令。5.1.4选择结构程序设计2019/8/27第五章VFP程序设计基础主讲:南京信息工程大学计算机与软件学院刘生29多重判断的问题?选择的嵌套例:cj在80分以上为优秀,60-80为及格,60分以下不及格?2019/8/27第五章VFP程序设计基础主讲:南京信息工程大学计算机与软件学院刘生30DOCASE结构示例cj=70DOCASECASEcj=80?”优良”CASEcj=60?”及格”OTHERWISE?”不及格”ENDCASE2019/8/27第五章VFP程序设计基础主讲:南京信息工程大学计算机与软件学院刘生31已知分支函数,编写程序。X=5,b=10,c=1DOCASECASEx0fx=(a*x+b)/(a*x-b)CASEx=0fx=1OTHERWISEfx=(a*x-b)/(a*x+b)ENDCASE?函数F(X)的值为:+STR(fx,6,1)5.1.4选择结构程序设计)0()0()0(**1**)(xxxbxabxabxabxaxF2019/8/27第五章VFP程序设计基础主讲:南京信息工程大学计算机与软件学院刘生325.1.5循环结构程序设计循环结构也称为重复结构,是指程序执行过程中,其中的某段代码被重复执行若干次。被重复执行的代码段,通常称之为循环体。VisualFoxPro支持循环结构的命令包括:For-EndforDoWhile-EnddoScan-Endscan2019/8/27第五章VFP程序设计基础主讲:南京信息工程大学计算机与软件学院刘生331.DoWhile命令格式:DoWhile<条件><命令序列>[Loop]<命令序列>[Exit]<命令序列>Enddo功能:首先判断条件表达式的值,若为.T.,就执行DoWhile与Enddo之间的命令序列(称为循环体),然后再判断条件表达式的值,重复刚才的过程。一旦条件取值为.F.,就跳出循环体转而执行Enddo后的下一条命令。5.1.5循环结构程序设计2019/8/27第五章VFP程序设计基础主讲:南京信息工程大学计算机与软件学院刘生342019/8/27第五章VFP程序设计基础主讲:南京信息工程大学计算机与软件学院刘生35根据职工的职称修改职工的工资。若职称为“高级工程师”,则工资增加200,若职称为“工程师”,则则工资增加150,若职称为“助理工程师”,则工资增加100。5.1.5循环结构程序设计2019/8/27第五章VFP程序设计基础主讲:南京信息工程大学计算机与软件学院刘生36CLEARUSE职工DOWHILE.NOT.EOF()DOCASECASE职称=“高级工程师”REPLACE工资WITH工资+200CASE职称=“工程师”REPLACE工资WITH工资+150CASE职称=“助理工程师”REPLACE工资WITH工资+100ENDCASESKIPENDDOUSE5.1.5循环结构程序设计2019/8/27第五
本文标题:VisualFoxPro90程序设计基础第5章程序设计基础
链接地址:https://www.777doc.com/doc-560340 .html