VF程序设计与数据库应用教案.ppt

上传人:za****8 文档编号:12668127 上传时间:2020-05-13 格式:PPT 页数:23 大小:533.51KB
返回 下载 相关 举报
VF程序设计与数据库应用教案.ppt_第1页
第1页 / 共23页
VF程序设计与数据库应用教案.ppt_第2页
第2页 / 共23页
VF程序设计与数据库应用教案.ppt_第3页
第3页 / 共23页
点击查看更多>>
资源描述
第3章结构化程序设计,3.4模块化设计结构化程序设计原则:自顶向下、逐步细化/求精1、子程序基本概念:主程序:主控模块,调用子程序。子程序:功能模块,被调用。子程序的使用:主程序:do子程序名子程序:通过return返回,第3章结构化程序设计,3.4模块化设计1、子程序主程序与子程序调用关系图:,Settalkoff.DOSUB1.Settalkon,主程序MAIN.PRG,.DOSUB2.RETURN,子程序SUB1.PRG,子程序SUB2.PRG,.Return,注意:Retruntomaster情况,第3章结构化程序设计,3.4模块化设计1、子程序应用举例:例1:分别计算100以内,200以内,300以内的奇数之和。主程序:main.prg&控制模块子程序:sub.prg&功能模块,settalkoffclearx=100dosubx=200dosubx=300dosubsettalkon,s=0forj=1toxstep2s=s+jnext?x,”以内的奇数和为:”,sreturn,主程序,子程序,第3章结构化程序设计,3.4模块化设计2、过程(1)过程文件概念:子程序的独立存在。将多个子程序合并起来存放在一个公用的程序文件中,该文件为过程文件。(2)过程文件构成:procedure子程序1文件名程序returnprocedure子程序2文件名程序return,第3章结构化程序设计,3.4模块化设计2、过程(3)过程的调用和关闭:调用:setprocedureto过程文件名关闭:setprocedureto或closeprocedure(4)过程的应用方式:方式一:主程序+过程文件为两个独立的程序文件方式二:主程序+过程文件在同一程序文件中应用举例:1、采用过程方式,编程实现用“*”绘制平行四边形、梯形、直角三角形和等腰三角形。,第3章结构化程序设计,3.4模块化设计2、过程(3)过程的调用和关闭:调用:setprocedureto过程文件名关闭:setprocedureto或closeprocedure(4)过程的应用方式:方式一:主程序+过程文件为两个独立的程序文件方式二:主程序+过程文件在同一程序文件中应用举例:1、采用过程方式,编程实现用“*”绘制平行四边形、梯形、直角三角形和等腰三角形。,第3章结构化程序设计,3.4模块化设计3、自定义函数函数的分类系统函数自定义函数自定义函数的概念:是指在程序设计中需要某项功能,而系统函数又无法满足需要,则用户可以自己创建函数,这些函数,称为用户自定义函数。自定义函数的分类:内部自定义函数独立自定义函数,第3章结构化程序设计,3.4模块化设计3、自定义函数应用举例:1、自定义一个摄氏温度转换为华氏温度的函数:ctf()。方式一:内部自定义函数:ctf()程序如下:test1.prgclearInput“请输入一个摄氏温度的值:”toc?”华氏温度为:”,ctf(c)functionctfparax¶metersy=x*(9/5)+32returny,提问:该函数可以如系统函数一样使用吗?,第3章结构化程序设计,3.4模块化设计3、自定义函数应用举例:1、自定义一个摄氏温度转换为华氏温度的函数:ctf()。方式二:独立自定义函数:ctf()程序如下:ctf.prgparax¶metersy=x*(9/5)+32returny在命令窗口测试:ctf()在程序中测试:ctf(),提问:如何使用该函数?,第3章结构化程序设计,3.5内存变量的作用域内存变量的分类:全局变量、局部变量、私有变量、隐藏变量全局变量:概念:指在整个系统各级程序中都有效的内存变量。定义:public,先定义后使用。局部变量概念:指在本级程序中有效的内存变量。定义:local,先定义后使用。私有变量概念:指在本级及下级子程序中都有效的内存变量。定义:默认方式,直接赋值使用。隐藏变量概念:将高层程序中创建的、与隐藏变量同名的全局变量和私有变量隐藏起来。是私有变量的一种特例。定义:private,不创建,只是隐藏指定变量。,第3章结构化程序设计,3.5内存变量的作用域四种变量的关系:应用举例:例1:分别计算100以内,200以内,300以内的奇数之和。验证一:主程序与子程序的正常应用,系统默认变量x的作用域是什么?(私有变量,具有继承性)验证二:在主程序中声明:localx,观察会发生什么错误,为什么?(局部变量,不能在非本级程序中使用)验证三:在子程序中声明:privatex,观察会发生什么错误,为什么?(隐藏了上级变量,本级程序中无法使用),第3章结构化程序设计,课堂练习1、利用过程文件完成多图形绘制。2、定义一个测试是否为素数的函数:prime()FunctionprimeInput“请输入一个自然数:”tonFlag=.t.fori=2tosqrt(n)Ifmod(n,i)=0Flag=.f.exitEndifNextIfflag?n,”是素数”Else?n,”不是素数”Endif,第3章结构化程序设计,3.5数组的应用1数组与数组元素(1)概念:数组是用一个统一的名称表示的、顺序排列的一组变量。类似于数学中的下标变量。(2)数组元素:数组中的每一个变量称为一个数组元素。2数组的维数:(1)一维数组与二维数组:A(10),B(5,2)(2)数组的顺序:一维数组:A(1)A(2)A(10)二维数组:B(1,1)B(1,2)B(2,1)B(2,2)B(5,2),第3章结构化程序设计,3.5数组的应用3数组的使用(1)数组的定义(声明):Dimension数组名declare数组名(2)数组的作用域:local、private、public同变量的作用域(3)数组的赋值:=、store给某一元素赋值:A(1)=1给某一数组赋值:A=1,第3章结构化程序设计,3.5数组的应用3数组编程例1随机产生100个10,99之间的随机整数。settalkoffcleardimea(100)fori=1to100a(i)=int(rand()*90+10)?a(i)nextsettalkon,第3章结构化程序设计,3.5数组的应用3数组编程例1进一步随机产生100个10,99之间的随机整数,并求和。settalkoffcleardimea(100)s=0fori=1to100a(i)=int(rand()*90+10)s=s+a(i)Next?ssettalkon,第3章结构化程序设计,数组的应用例题2.已知一个数列的前3项分别为0,0,1,以后各项都是前3项之和,求该数列的前30项之和。settalkoffcleardimea(30)a(1)=0a(2)=0a(3)=1fori=4to30a(i)=a(i-1)+a(i-2)+a(i-3)s=s+a(i)endfor?ssettalkon,第3章结构化程序设计,程序设计综合练习典型习题1-递推算法已知一个数列如下:1、1、2、3、5、8、13、21求该数列的第60项为多少?settalkoffcleardimef(60)f(1)=1f(2)=1fori=3to60f(i)=f(i-1)+f(i-2)f(i-2)=f(i-1)&新的第一项f(i-1)=f(i)&新的第二项endfor?f(i-1)settalkon,为什么?验证!,第3章结构化程序设计,程序设计综合练习典型习题2-求素数例题1:判断一个数是否为素数?settalkoffclearInput“请输入一个自然数:”tonflag=.t.fori=2tosqrt(n)|n/2|n-1Ifmod(n,i)=0flag=.f.exitendifnextIfflag?n,”是素数”else?n,”不是素数”endifsettalkon,可以删除该语句吗?为什么?,第3章结构化程序设计,程序设计综合练习典型习题2-求素数例题2:求100到1000之间素数的个数。s=0forn=100to1000flag=.t.fori=2tosqrt(n)Ifmod(n,i)=0flag=.f.exitendifnextendforIfflags=s+1endif?s,Flag=.t.?为什么?,第3章结构化程序设计,程序设计综合练习典型习题3-求完备数例题1:一个整数所有因子之和等于该数本身,如6=1+2+3。求10000以内完备数。fori=1to10000s=1forj=2tosqrt(i)ifmod(i,j)=0s=s+j+i/jendifnextifs=i?iendifnext,i/j是什么?,第3章结构化程序设计,程序设计综合练习基本编程练习题1.用一元纸币兑换一分、两分和五分的硬币,要求兑换硬币的总数为60枚,问共有多少种换法?(注:在兑换中一分、两分或五分的硬币数可以为0枚)112.已知一个数列的前3个数为3,4,5,以后每个数为前3个数的和,编程序求此数列的第33个数。5373467393.编写程序,求在四位数的偶数中,所有各位数字之积(且不为0)是30的倍数的数的和。34152064.编写程序,求在2001000之间所有能被4除余3,被7除余5,被9除余2的数之和。16535.编写程序,计算从1981年开始到3000年为止,我们将遇到多少个素数年号。131,下课了。,追求,休息一会儿。,
展开阅读全文
相关资源
相关搜索

当前位置:首页 > 图纸专区 > 课件教案


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!