高中信息技术选修1教案-4.4-过程和函数1-浙教版_第1页
高中信息技术选修1教案-4.4-过程和函数1-浙教版_第2页
高中信息技术选修1教案-4.4-过程和函数1-浙教版_第3页
高中信息技术选修1教案-4.4-过程和函数1-浙教版_第4页
全文预览已结束

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

4.4过程和函数教学设计教学内容:过程与函数教学目标:使学生掌握Sub过程与Function函数过程的使用,理解参数传递的意义教学重点:Sub过程与Function函数过程的定义与调用教学难点:参数传递的方法教学方法:讲授法教学过程:引入:VB应用程序是按模块化的方式组成的,一个程序模块是程序的一部分,程序模块分为过程和函数两种。提出问题,如何求出3!+5!+7!+11!=?让学生思考这样的问题用以前学过的知识怎样解决,之后引入过程。分析问题:若用前面学习的解决方法,每个数的阶乘都需要写一段代码,那么这个程序就会很冗长并且效率低。若把求阶乘的代码作为模块,那么在求各个数的阶乘时,只需调用这个模块就可以了,这样就简化了程序,提高了效率及程序的可读性。程序模块分为:Function过程分为:标准函数和自定义函数,自定义函数是这节课主要学习内容。Sub过程分为:事件处理过程和通用过程,通用过程不作要求。讲解:1.事件处理过程格式:Sub<事件处理过程名>[(<形参表>)][<语句组>][ExitSub][<语句组>]EndSub事件处理包括:窗体 Form_Load、Form1_Click文本框 Text1_Click、Text1_KeyPress、Text1_Change、Text1_DblClick按钮 Command1_Click标签 Label1_Click、Label1_DblClick图像框 Image1_Click计时器 Timer1_Timer备注:其中,Load事件是窗体加载事件,Click是鼠标单击事件,DblClick是鼠标双击事件,KeyPress是按下键盘任意键事件,Timer是计时器事件。2.说明(1)ExitSub用于退出Sub过程。(2)事件处理过程名必须符合:对象名_事件标准名。(3)Sub过程通过<形参表>中的参数返回值。【例1】设计一个程序,计算一个立方体的体积,单击COMMAND1按钮,程序立即进行体积的计算。分析:由于是单击按钮事件处理,不需要返回值,所以不需要形参。SubCommand1_Click()DimaAsDouble,bAsDouble,cAsDoublea=Val(Text1.Text)b=Val(Text2.Text)c=Val(Text3.Text)Text4.Text=Str(a*b*c)Endsub通过【例1】让学生了解建立过程的方法【例2】设计一个应用程序,计算一批输入数据的平均值(如图),要求能显示:2.自定义函数1.Function过程的格式Function<函数过程名>([<形参表>])[As<类型>][<语句组>][<函数过程名>=<表达式>][ExitFunction][<语句组>][<函数过程名>=<表达式>]EndFunction2.说明(1)<函数过程名>:Function过程的名称,与变量的命名规则相同。(2)<形参表>:实参必须与形参个数相同,位置与类型一一对应。可以是同类型的常量、变量、表达式。当无形参时省略括号。(3)ExitFunction语句:从Function过程中退出。(4)Function过程通过赋值语句<函数过程名>=<表达式>,将函数的返回值赋给<函数过程名>。Function过程的调用直接在表达式中调用。格式:<函数过程名>([<实参表>])<实参表>:常量、变量或表达式,各参数之间用逗号分隔。如果是数组,在数组名之后必须跟一对空括号。【例3】求3!+5!+7!+11!=?定义函数过程FunctionFact(NAsInteger)AsDoubleDimiAsInteger,FAsDoubleF=1Fori=1ToNF=F*iNextiFact=F'给函数过程名赋值,传递返回值EndFunction'在按钮的Click事件过程中调用函数过程PrivateSubcommand_Click()DimsumAsDoublesum=sum+Fact(3)+Fact(5)+Fact(7)+Fact(11)Print"3!+5!+7!+11!=";sumEndSub强调:1.自定义函数需先定义再调用。2.函数通过函数名返回结果。【例4】设计一个函数Leap,判断y年是否是闰年,若是,就返回1,否则,就返回0。我们先构造一个函数Leap(y):‘判断y年是否是闰年方法;Functionleap(yAsInteger)AsIntegerIfymod100=0thenIfymod400=0thenLeap=1ElseLeap=0ElseIfymod4=0thenLeap=1ElseLeap=0EndifEndFunctionPrivateSubForm_Click()DimaAsIntegera=Val(Text1.Text)Ifleap(a)=1ThenLabel1.Caption=”Yes”ElseLabel1.Caption=”NO”EndSub3.参数的传递形参和实参形参:出现在Sub或Function语句中。实参:出现在调用程序中。在传递参数时,形参表与实参表中对应参数个数、类型、位置顺序必须一一对应。【例5】在文本框text1和text2中输入两个整数,单击按钮对象command1,在标签label1中显示这两个数的较大数。Founctionbig(x,y)asintegerifx>ythenbig=xelsebig=yEndifEndFounctionprivatesubcommand1_click()dima1,a2asintegera1=val(text1.text)a2=val(text1.text)Label1.caption=EndSub分析:由于输入的整数是a1,a

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论