第1节 过程与自定义函数 考试内容 考试要求 过程 c 自定义函数 c 一、过程 1.VB应用程序是按模块化的方式组成的,程序模块分为过程和函数两种,过程强调的是动作,而函数强调的是值的计算。 2.什么是过程 将程序划分为一个个较小的逻辑单元,每个逻辑单元构成一个过程。过程中的代码可以被重复地调用。 3.过程的分类 过程分成两类:事件处理过程和通用过程。 ①事件处理过程的一般格式: Sub 事件处理过程名(参数表) 语句块 End Sub ②通用过程的一般格式: Sub 通用过程名(参数表) 语句块 End Sub 过程调用:Call 过程名(参数表) 4.常见的VB事件 常见的VB事件有:Click(单击)、DblClick(双击)、KeyPress(按键)、Load(装载)、Change(改变)等。 作用在VB对象上的常见事件处理过程有: 文本框Text:Text1_Click、Text1_DblClick、Text1_KeyPress、Text1_Change 命令按钮Command:Command1_Click 标签Label:Label1_Click 窗体Form:Form_Load(窗体装载) 二、自定义函数 1.函数 函数也是一个程序模块,不同之处是函数执行完成后,函数的计算结果被送到函数的调用点上,供程序的后继部分继续执行,会返回一个函数值。函数值是通过函数名返回的。 2.自定义函数格式 Function 函数名(参数表)As类型名 语句块 End Function 一、过程 【典例1】 下面VB程序的功能是利用海伦公式求三角形面积。程序运行时,分别在文本框Text1、Text2、Text3中输入三条边的长度,单击“计算”按钮,若能构成三角形,则在标签Label5中显示三角形的面积,否则显示信息“无法构成三角形”。 提示:海伦公式=,其中p为周长的一半。 运行效果如下图所示: 实现上述功能的VB程序如下,请回答下列问题: Private Sub Command1_Click() Dim a As Integer, b As Integer, c As Integer, d As Single, s As Single a = Val(Text1.Text) b = Val(Text2.Text) c = Val(Text3.Text) If a + b > c And a + c > b And ____①____ Then d = (a + b + c) / 2 s = _____②_____ Label5.Caption = Str(s) Else Label5.Caption = “无法构成三角形” End If End Sub (1)“Private Sub Command1_Click()”中Command1是指_____,Click是指_____,Command1_Click为_____(选填:对象名 /事件名/属性名/过程名)。 (2)请在划线处填入合适的代码。 解析 (1)本小题主要考查的是VB的对象、事件及事件处理过程。Command1是指对象名,Click是指事件名(鼠标单击),Command1_Click为过程名。 (2)本小题主要考查的是VB表达式。程序①处语句表示能否构成三角形的条件(任二条之和大于第三边),因此①处代码为b + c > a;程序②处代码表示用海伦公式求三角形面积,将数学公式转换为VB公式,因此②处代码为Sqr(d * (d - a) * (d - b) * (d - c))。 答案 (1)对象名 事件名 过程名 (2)①b + c > a 或a < b + c ②Sqr(d * (d - a) * (d - b) * (d - c)) 二、自定义函数 【典例2】 编写一个求[a,b]区间内的所有素数的VB程序。程序运行时,分别在文本框Text1、Text2中输入a、b的值,单击“求解”按钮,在列表框List1中输出[a,b]区间内的所有素数,并统计个数,显示在列表框的最后一行。程序运行效果如下图所示: 实现上述功能的VB程序如下,请回答下列问题: Function prime(x As Integer) As Boolean Dim k As Integer k = 2 prime = True Do While k < x And prime If x Mod k = 0 Then _____①_____ Else k = k + 1 End If Loop End Function Private Sub Command1_Click() Dim i As Integer, a As Integer, b As Integer, n As Integer a = Val(Text1.Text) b = Val(Text2.Text) For i = a To b If _____ ... ...
~~ 您好,已阅读到文档的结尾了 ~~