Visual Basic 程序设计基础:第四章 函数与过程

上传人:M****1 文档编号:575941394 上传时间:2024-08-19 格式:PPT 页数:54 大小:617KB
返回 下载 相关 举报
Visual Basic 程序设计基础:第四章 函数与过程_第1页
第1页 / 共54页
Visual Basic 程序设计基础:第四章 函数与过程_第2页
第2页 / 共54页
Visual Basic 程序设计基础:第四章 函数与过程_第3页
第3页 / 共54页
Visual Basic 程序设计基础:第四章 函数与过程_第4页
第4页 / 共54页
Visual Basic 程序设计基础:第四章 函数与过程_第5页
第5页 / 共54页
点击查看更多>>
资源描述

《Visual Basic 程序设计基础:第四章 函数与过程》由会员分享,可在线阅读,更多相关《Visual Basic 程序设计基础:第四章 函数与过程(54页珍藏版)》请在金锄头文库上搜索。

1、第四章第四章 函数与过程函数与过程24.1 过程的编写与调用 内部函数是内部函数是VB事先定义好的函数,我们可事先定义好的函数,我们可以直接拿过来用,但内部函数并不能解决所有的以直接拿过来用,但内部函数并不能解决所有的问题,有很多地方需要我们亲自动手,编写问题,有很多地方需要我们亲自动手,编写自定自定义的函数或者过程。义的函数或者过程。过程过程函数函数子过程子过程内部函数内部函数自定义函数自定义函数事件过程事件过程自定义子过程自定义子过程2024/8/自定义函数的引入自定义函数的引入n nPrivate Sub Form_click()n n Dim a As Integer, temp As

2、 Integern n a = InputBox(please input a number)n n temp = 1n n For i = 2 To an n temp = temp * in n Next in n Print tempn nEnd Sub2024/8/自定义函数的引入自定义函数的引入n nPrivate Sub Form_click()Private Sub Form_click()n n Dim a As Integer, temp As Long Dim a As Integer, temp As Longn n a = InputBox(please input a

3、 number) a = InputBox(please input a number)n n temp = fact(a)temp = fact(a)n n Print temp Print tempn nEnd SubEnd Subn nPrivate Function fact(k As Integer) As LongPrivate Function fact(k As Integer) As Longn n Dim i As Byte Dim i As Byten n fact = 1 fact = 1n n For i = 2 To k For i = 2 To kn n fact

4、 = fact * i fact = fact * in n Next i Next in nEnd FunctionEnd Function54.1.1 自定义函数的编写与调用自定义函数的编写与调用定义方式定义方式 Function 函数名函数名(形参列表形参列表) As End Function:Public|PrivateStatic,不能是不能是Dim。(形参列表形参列表):表示在调用时传递给函数的参数的变量列表,表示在调用时传递给函数的参数的变量列表, 圆括号必须要有。有返回类型圆括号必须要有。有返回类型关键字关键字Function与与End Function相呼应。相呼应。形参列表

5、形参列表的声明语法:的声明语法:ByVal|ByRef 变量名变量名 As 类型类型64.1.1 自定义函数自定义函数Private Sub command1_Click() Dim m&, n&, c&, t&, i% Dim FacN&, FacM&, FacNM& m = Val(InputBox(请输入请输入m的值的值, 组合公式组合公式) n = Val(InputBox(请输入请输入n的值的值, 组合公式组合公式) If n m Then t = n n = m m = t End If FacN = 1 For i = 1 To n FacN = FacN * i Next i

6、FacM = 1 For i = 1 To m FacM = FacM * i Next i FacNM = 1 For i = 1 To n - m FacNM = FacNM * i Next i c = FacN / (FacM * FacNM) label1.Caption = Str(c)End Sub7 可以将代码中功能重复的部分用自定义函数来编可以将代码中功能重复的部分用自定义函数来编写,这将大大提高编程的效率。写,这将大大提高编程的效率。Private Sub CmdOk_Click() Dim m&, n&, c&, t& m = Val(InputBox(请输入请输入m的值

7、的值, 组合公式组合公式) n = Val(InputBox(请输入请输入n的值的值, 组合公式组合公式) If n m Then t = n n = m m = t End If c = Fac(n) / (Fac(m) * Fac(n - m) LblResult.Caption = Str(c)End SubPrivate Function Fac(ByVal k As Long) As Long Dim F&, i% F = 1 For i = 1 To k F = F * i Next i Fac = FEnd Function4.1.1 自定义函数自定义函数调用方式2024/8/实

8、例实例4-3 显示显示11000之间的素数。之间的素数。n n要求编制函数过程,用于判断一个整数是否是素数。2024/8/自定义过程(自定义过程(SUB)的引入)的引入n n注意注意Msgbox函数的用法函数的用法n n=MsgBox(prompt,button ,title )n n比如:比如: i = MsgBox(“请关机请关机“, 0 + 64 + 0 , ”关机确认关机确认)n n如果有时候如果有时候并不需要用到返回值并不需要用到返回值,仅仅是,仅仅是一个操作过程的话,那就引入自定义过程。一个操作过程的话,那就引入自定义过程。n n比如:比如:MsgBox “请关机请关机“, 0 +

9、 64 + 0 , ”关机确认关机确认10 Sub 子过程名子过程名(形参列表形参列表) End Sub:Public|PrivateStatic,不能是,不能是Dim。(形参列表形参列表):表示在调用时传递给子过程的参数的变量列表,表示在调用时传递给子过程的参数的变量列表, 圆括号必须要有。没有返回类型圆括号必须要有。没有返回类型关键字关键字Sub与与End Sub相呼应。相呼应。形参列表形参列表的声明语法:的声明语法:ByVal|ByRef 变量名变量名 As 类型类型4.1.2 自定义子过程(自定义子过程(SUB)Private Sub swap(a, b) Dim t t = a a

10、= b b = tEnd Sub114.1.2 自定义子过程自定义子过程Private Sub Form_Click() Dim First!, Second!, Temp! First = InputBox(请输入第一个数:请输入第一个数:, First) Second = InputBox(请输入第二个数:请输入第二个数:, Second) Print 初始值:初始值:First=; First, Second=; Second If First Second Then swap First, Second End If Print 交换后:交换后:First=; First, Secon

11、d=; SecondEnd SubPrivate Sub swap(a, b) Dim t t = a a = b b = tEnd Sub124.1.2 自定义子过程(自定义子过程(SUB)调用方式调用方式两种调用方式:两种调用方式:两种调用方式:两种调用方式:(1) (1) 子过程名子过程名子过程名子过程名实参列实参列实参列实参列表表表表(2)(2) Call Call 子过程名子过程名子过程名子过程名(实参列(实参列(实参列(实参列表)表)表)表)使用使用Call关键字时,参关键字时,参数两边要加圆括号。数两边要加圆括号。省略省略Call关键字,则必须关键字,则必须省略参数两边的圆括号。

12、省略参数两边的圆括号。13自定义子过程与自定义函数的异同自定义子过程与自定义函数的异同区别:区别:(1)子过程以关键字)子过程以关键字Sub开始,函数以关键字开始,函数以关键字Function开始。开始。(1)子过程没有返回值,没有类型;)子过程没有返回值,没有类型; 函数有返回值,有类型。函数有返回值,有类型。(2)调用时,子过程是一条独立的语句;)调用时,子过程是一条独立的语句; 但函数不能作为独立的语句加以调用,但函数不能作为独立的语句加以调用,必须参与表达式运算必须参与表达式运算。相同点:相同点:(1)都属于过程。)都属于过程。(2)都能实现相同的功能。)都能实现相同的功能。过程过程函

13、数函数子过程子过程内部函数内部函数自定义函数自定义函数事件过程事件过程自定义子过程自定义子过程14形参:形参:在函数定义中的参数列表称为形参。形参标在函数定义中的参数列表称为形参。形参标明了调用自定义的函数或者过程所需参数的个数、明了调用自定义的函数或者过程所需参数的个数、位置和类型。形参仅仅是一个符号,是要被实际数位置和类型。形参仅仅是一个符号,是要被实际数据所代替的。据所代替的。实参:实参:实际参与运算的数据就是实参。实际参与运算的数据就是实参。参数传递:参数传递:程序在调用函数或过程时,实参代替形参的程序在调用函数或过程时,实参代替形参的过程。过程。4.2 参数传递参数传递154.2 参

14、数传递参数传递参数传递有两种方式:参数传递有两种方式: 按地址传递、按数值传递按地址传递、按数值传递 形参前加形参前加“ByRef”关键字或什么都不加的为按地址传递,关键字或什么都不加的为按地址传递, 形参前加形参前加“ByVal”关键字的是按数值传递。关键字的是按数值传递。2024/8/4.2.1 按值传递按值传递n n形参变量名前的修饰符是形参变量名前的修饰符是Byvaln n调用时,创建形参,用实参的表达式的值调用时,创建形参,用实参的表达式的值复制给形参变量,调用结束,形参变量被复制给形参变量,调用结束,形参变量被取消。它是一种取消。它是一种单向传递单向传递,即对形参的改,即对形参的改

15、变不会导致对实参变量的任何改变。变不会导致对实参变量的任何改变。174.2.1 参数传递参数传递按数值传递按数值传递Private Sub Form_Click() Dim First!, Second!, Temp! First = InputBox(请输入第一个数:请输入第一个数:, First) Second = InputBox(请输入第二个数:请输入第二个数:, Second) Print 初始值:初始值:First=; First, Second=; Second Print If First Second Then Call swap(First, Second) End If

16、Print 交换后:交换后:First=; First, Second=; SecondEnd SubPrivate Sub swap(ByVal a,ByVal b) Dim t t = a a = b b = tEnd Sub形形参参实实参参2024/8/4.2.2 按地址传递按地址传递n n按地址传递的形参变量名前的修饰符是按地址传递的形参变量名前的修饰符是Byrefn n如果形参变量名前不做任何说明默认是如果形参变量名前不做任何说明默认是Byrefn n按地址传递时,过程中对形参变量值的改按地址传递时,过程中对形参变量值的改变即是对实参变量的改变,即变即是对实参变量的改变,即双向传递双

17、向传递。19Private Sub Form_Click() Dim First!, Second!, Temp! First = InputBox(请输入第一个数:请输入第一个数:, First) Second = InputBox(请输入第二个数:请输入第二个数:, Second) Print 初始值:初始值:First=; First, Second=; Second Print If First Second Then Call swap(First, Second) End If Print 交换后:交换后:First=; First, Second=; SecondEnd SubP

18、rivate Sub swap(a, b) Dim t t = a a = b b = tEnd SubPrivate Sub swap(ByRef a,ByRef b) Dim t t = a a = b b = tEnd Sub4.2.2 参数传递参数传递按地址传递按地址传递按数值传递按数值传递将复印件上交,原件永远不受影响将复印件上交,原件永远不受影响按地址传递按地址传递将原件上交,改的就是原件将原件上交,改的就是原件实实参参形形参参20例:例:例:例:单击单击单击单击Command1Command1后的运行结果后的运行结果后的运行结果后的运行结果Private Sub ss(ByVal

19、 x as integer, ByRef y%, Private Sub ss(ByVal x as integer, ByRef y%, z%)z%) x = x + 1 x = x + 1 y = y + 1 y = y + 1 z = z + 1 z = z + 1End SubEnd Sub1 3 4Private Sub Command1_Click() Dim A%, B%, C% A = 1 B = 2 C = 3 Call ss(A, B, C) Print A; B; CEnd Sub21数组为参数数组为参数Private Function tim(n( ) As Integ

20、er) Dim t%, i% t = 1 For i = LBound(n) To UBound(n) t = t * n(i) Next i tim = tEnd FunctionPrivate Sub Command1_Click() Dim a(3) As Integer Dim k As Integer, j As Integer For j = LBound(a) To UBound(a) a(j) = InputBox(请输入请输入a( & j & )的值的值, 数组输入数组输入) Next j k = tim(a( ) Print kEnd Subv形参的语法:形参的语法: By

21、Ref 数组名数组名( ) As 类型类型 v无论是形参还是实参,无论是形参还是实参,都应省略其维数都应省略其维数!形参括号不能省略!实参括号可以省略。形参括号不能省略!实参括号可以省略。v数组参数在传递时数组参数在传递时只能按地址传递只能按地址传递!2024/8/数组为参数数组为参数n nPrivate Sub Command1_Click()Private Sub Command1_Click()n n Dim a(3) As Integer Dim a(3) As Integern n Dim k As Integer, j As Integer Dim k As Integer, j

22、As Integern n For j = 0 To 3 For j = 0 To 3n n a(j) = InputBox( a(j) = InputBox(请输入请输入请输入请输入a( & j & )a( & j & )的值的值的值的值, , 数组输入数组输入数组输入数组输入)n n Next j Next jn n k = tim(a(), 3) k = tim(a(), 3)n n Print k Print kn nEnd SubEnd SubPrivate Function tim(n() As Integer, L As Integer) As Long Dim t%, i% t

23、 = 1 For i = 0 To L t = t * n(i) Next i tim = tEnd Function也可以这样自也可以这样自定义该函数定义该函数231、过程的编写不能嵌套。、过程的编写不能嵌套。2、如果在调用时该形参对应的实参是一个表达式,、如果在调用时该形参对应的实参是一个表达式, 则按值传递方式调用过程。则按值传递方式调用过程。3、形参是数组时,只能是地址传递。、形参是数组时,只能是地址传递。小结小结:前个例子里如果改成前个例子里如果改成 Call ss(A, B1, C)则输出结果为则输出结果为1 2 4244.3 多模块程序设计多模块程序设计工程文件工程文件 (*.v

24、bp)窗体模块窗体模块文件文件 (*.frm)类模块类模块文件文件 (*.cls)标准模块标准模块文件文件 (*.bas)函数过程、子过程、函数过程、子过程、事件过程事件过程函数过程、子过程函数过程、子过程过程的相互调用与通信必然会涉及到过程的相互调用与通信必然会涉及到过程的作用域以及变量的作用域和生存期的问题。过程的作用域以及变量的作用域和生存期的问题。254.3.1 过程的作用域过程的作用域用两个限定词加以区分:用两个限定词加以区分:Private、Public 当过程前的限定词为当过程前的限定词为Private,则表明此过程只能被本,则表明此过程只能被本模块中其他的过程所调用,我们称之为

25、模块中其他的过程所调用,我们称之为模块级过程模块级过程。 当过程前的限定词为当过程前的限定词为Public,则表明此过程不仅能被,则表明此过程不仅能被本模块所调用,也可以被其他模块中的过程所调用,我们本模块所调用,也可以被其他模块中的过程所调用,我们称之为称之为全局过程全局过程。过程作用域:过程作用域:过程能被调用的范围。过程能被调用的范围。264.3.1 过程的作用域过程的作用域过程前没有限定词时,过程前没有限定词时,默认为默认为Public。Public Sub swap(x%, y%) Dim T% T = x x = y y = TEnd Sub(标准模块)(标准模块)Private

26、Sub Form_Click() Dim a%, b%, T% a = InputBox(请输入第一个数:请输入第一个数:, a) b = InputBox(请输入第二个数:请输入第二个数:, b) Print 初始值:初始值:a=; a, b=; b If a b Then Call swap (a, b) Print 交换后:交换后:a=; a, b=; bEnd SubPrivate Sub Command1_Click() Form2.ShowEnd Sub(Form1模块)模块)Private Sub Form_Click() Dim p%, q%, T% p = InputBox(

27、请输入第一个数:请输入第一个数:, p) q = InputBox(请输入第二个数:请输入第二个数:, q) Print 初始值:初始值:p=; p, q=; q If p q Then Call swap (p, q) Print 交换后:交换后:p=; p, q=; qEnd Sub(Form2模块)模块)274.3.1 过程的作用域过程的作用域思考:思考: (1)如果)如果swap在标准模块中是用在标准模块中是用Private定义的,定义的, 是否能被是否能被Form1和和Form2调用?调用? (2)如果)如果swap是在是在Form1中用中用Private定义的,定义的, 是否能被是

28、否能被Form1和和Form2调用?调用? (3)如果)如果swap在在在在Form1中用中用Public定义的,定义的, 是否能被是否能被Form1和和Form2调用?调用? (4)如果在两个标准模块里都有)如果在两个标准模块里都有swap过程,过程, 这时应该如何调用?这时应该如何调用?284.3.1 过程的作用域(调用规则)过程的作用域(调用规则)294.3.2 变量的作用域和生存期变量的作用域和生存期变量的变量的作用域作用域:变量能被使用的:变量能被使用的范围范围。变量的变量的生存期生存期:变量从产生到消亡的:变量从产生到消亡的时间时间。按照声明变量的按照声明变量的位置位置和和限定词限

29、定词的不同,变量分为三种:的不同,变量分为三种: 局部变量、模块级变量、全局变量。局部变量、模块级变量、全局变量。2024/8/回顾变量声明的格式回顾变量声明的格式显示声明变量的显示声明变量的格式格式: as Dim、Static、Public、Private31什么样的变量才叫局部变量?什么样的变量才叫局部变量?局部变量的作用域和生存期局部变量的作用域和生存期局部变量局部变量以以DimDim声明声明动态动态变量变量以以StaticStatic声明声明静态静态变量变量用用DimDim或或StaticStatic在在过程内过程内声明的变量称为局部变量。声明的变量称为局部变量。2024/8/局部变

30、量的作用域和生存期局部变量的作用域:局部变量的作用域:只能在声明它的本过程中使用,而不能只能在声明它的本过程中使用,而不能被其它过程使用。被其它过程使用。局部变量的生存期:局部变量的生存期:若是动态变量,生存期为变量所在过程的若是动态变量,生存期为变量所在过程的执行期,因此执行期,因此过程结束,变量的值自动消失过程结束,变量的值自动消失;若是静态变量,;若是静态变量,生存期为整个应用程序的运行期,生存期为整个应用程序的运行期,过程结束,变量还会保持当过程结束,变量还会保持当前的值前的值。33 局部变量的作用域和生存期局部变量的作用域和生存期Private Sub Command1_Click(

31、) Dim n As Integer n = 10 Print nEnd SubPrivate Sub Command2_Click() Dim n As Integer n = 20 Print nEnd Sub假设在工程1的Form1窗体中定义了如下两个事件过程事件过程:打开工程打开工程1 12024/8/Private Sub Command2_Click() Static i As Integer i = i + 10 Print Spc(5);iEnd SubPrivate Sub Command1_Click() Dim i As Integer i = i + 10 Print

32、iEnd Sub 局部变量的作用域和生存期局部变量的作用域和生存期假设在工程1的Form1窗体中定义了如下两个事件过程事件过程:打开工程打开工程1 135要活用静态变量(要活用静态变量(Static)例例如如:有有一一个个人人编编了了下下面面一一段段程程序序,想想用用变变量量n记记录录单单击击窗体的次数。窗体的次数。Private Sub Form_Click() Dim n As Integer n = n + 1 Print 已单击次数:已单击次数:; n & 次次End Sub36什么样的变量才叫什么样的变量才叫模块级变量模块级变量? 模块级变量的作用域和生存期模块级变量的作用域和生存期

33、用用Private或或Dim在在模块内模块内的的“通用声明通用声明”段声明的变段声明的变量。量。在我在我这里这里2024/8/模块级变量的模块级变量的作用域作用域:只能在声明它的:只能在声明它的本模块本模块中使用,即能中使用,即能被本模块中的其它过程使用。被本模块中的其它过程使用。模块级变量的模块级变量的生存期:生存期:整个应用程序的运行期。整个应用程序的运行期。 模块级变量的作用域和生存期模块级变量的作用域和生存期38Private Z As IntegerPrivate Sub S( ) Z = Z + 2 Print ZEnd SubPrivate Sub Command1_Click(

34、 ) Z = Z + 2 Call S Print ZEnd Sub 模块级变量的作用域和生存期模块级变量的作用域和生存期打开程序打开程序程序执行时,程序执行时,鼠标单击命令鼠标单击命令按钮按钮1一次,一次,会在窗体上看会在窗体上看到什么?到什么?39什么样的变量才叫全局变量?什么样的变量才叫全局变量?全局变量的全局变量的作用域作用域:能被这个应用程序中所有模块的所有:能被这个应用程序中所有模块的所有过程使用。过程使用。全局变量的全局变量的生存期生存期:整个应用程序的运行期。:整个应用程序的运行期。 全局变量的作用域和生存期全局变量的作用域和生存期用用Public限定词在限定词在模块内模块内的

35、的“通用声明通用声明”段声明的变量。段声明的变量。在编程时,在编程时,全局变量越少越好全局变量越少越好。40Rem Form1Public i As IntegerPrivate Sub Command1_Click() i = i + 1 Print iEnd SubPrivate Sub Command2_Click() Form2.ShowEnd SubRem Form2Private Sub Command1_Click() i = Form1.i + 1 Print iEnd Sub 全局变量的作用域和生存期全局变量的作用域和生存期假设在工程假设在工程1中的中的Form1当中定义当中

36、定义Command1_Click事件和事件和Command2_Click事件,事件,在在Form2当中定义当中定义的另外一个的另外一个Command1_Click事件。事件。打开程序打开程序41变量的变量的重名重名问题:问题: 我们可以在我们可以在不同的作用域不同的作用域内声明具有内声明具有相同名称相同名称的变量。它们是毫无关联的不同变量,不会相互影响。的变量。它们是毫无关联的不同变量,不会相互影响。如果发生如果发生作用域重叠作用域重叠,就应该采取,就应该采取“就近原则就近原则”。即首先看这个变量在本过程中是否有声明它的语句,即首先看这个变量在本过程中是否有声明它的语句,有则为局部变量;若无,

37、再看这个变量在本模块中是有则为局部变量;若无,再看这个变量在本模块中是否有声明它的语句,有则为模块级变量或者是全局变否有声明它的语句,有则为模块级变量或者是全局变量。量。4.3.2 变量的作用域和生存期变量的作用域和生存期42Private Sub Command1_Click( ) Dim X As Integer, Y As Integer, Z As Integer X = 2 Y = 3 Z = X + Y Call S Print X, Y, ZEnd SubPrivate Sub S( ) Dim X As Integer, Y As Integer, Z As Integer X

38、 = 1 Y = 2 Z = X + Y Print X, Y, ZEnd Sub在工程在工程1的的Form1窗体中定义了窗体中定义了Command1_Click事件过程和自定义事件过程和自定义了一个了一个S子过程子过程4.3.2 变量的作用域和生存期变量的作用域和生存期打开程序打开程序434.3.2 变量的作用域和生存期变量的作用域和生存期Private i As IntegerPrivate Sub Command1_Click() Static i As Integer i = i + 10 Print iEnd SubPrivate Sub Command2_Click() Print

39、 iEnd Sub再来看一个例子:再来看一个例子:打开程序打开程序我俩是我俩是一家一家44 如果想在含有局部变量的过程中使用重名的如果想在含有局部变量的过程中使用重名的全全局变量局变量,可以在变量名前,可以在变量名前加上模块名加上模块名。Public i As IntegerPrivate Sub Command1_Click() Static i As Integer Form1.i = Form1.i + 10 Print iEnd SubPrivate Sub Command2_Click() Print iEnd Sub4.3.2 变量的作用域和生存期变量的作用域和生存期45Priva

40、te x% , y%Private x% , y%, z%, z%Private Private Sub Sub Form_click( Form_click( ) ) Dim x as integer Dim x as integer x=1 x=1 y=2 y=2 Call AA(y+1) Call AA(y+1) z=BB(x)z=BB(x) Print x,y,zPrint x,y,zEnd SubEnd SubPrivate Sub AA(byval z%) y=z+x z=x+yEnd SubPrivate Function BB( y%) y=y+1 BB=x+yEnd func

41、tion综合应用例子:综合应用例子:232注意注意:所有形参都是局部变量:所有形参都是局部变量打开程序打开程序2024/8/练习题练习题n n1 1、工程的扩展名是、工程的扩展名是?n n2 2、对象的三要素是、对象的三要素是?n n3 3、输入对话框、输入对话框inputboxinputbox的返回值的类型是?的返回值的类型是?n n4 4、Int(Rnd*100)Int(Rnd*100)表示的数的范围是?表示的数的范围是?n n5 5、Print Print “ “5*55*5” ”的执行结果是?的执行结果是?n n6 6、表达式、表达式16/2-23*7 Mod 916/2-23*7 M

42、od 9的值是?的值是?n n7 7、x x大于大于大于大于5 5 5 5小于小于小于小于10101010 和和和和 a a和和和和b b中有且只有一个为中有且只有一个为中有且只有一个为中有且只有一个为0 0的表达式怎么写的表达式怎么写的表达式怎么写的表达式怎么写?n n8 8、用、用InputboxInputbox函数为数组函数为数组B B的所有元素的所有元素B(0)B(0)、B(1)B(1)、B(9)B(9)依次赋值的语句怎么写?依次赋值的语句怎么写?n n9 9、数组名作为参数,相应的形参传递方式是、数组名作为参数,相应的形参传递方式是?n n1010、函数名在函数体中必须被赋值?、函数

43、名在函数体中必须被赋值?2024/8/程序阅读题:程序阅读题:n n1、Private Sub form_click()n n Dim a As Integer, s As Integern n a = 5: s = 0n n Do While a a(j) ThenIf a(i) a(j) Thenn n m = a(i): m = a(i):?: a(j) = m: a(j) = mn n End If End Ifn n Next j, i Next j, in n For i = 1 To 30 For i = 1 To 30n n If a(i) Mod 2 0 Then Print

44、 a(i); If a(i) Mod 2 0 Then Print a(i);n n Next i Next in nEnd SubEnd Sub以下程序产生以下程序产生30个个两位两位随机整数、并按随机整数、并按从小到大从小到大的顺序存入数组的顺序存入数组a中,中,再将其中的再将其中的奇数奇数按从小到大的顺序在窗体中用按从小到大的顺序在窗体中用紧凑紧凑格式输出。格式输出。2024/8/程序设计题程序设计题1n n单击命令框按钮,弹出输入对话框,提示输入一元二次方程的系数a,b,c,判断是否大于等于0,弹出消息框给用户说明有无实数解。2024/8/程序设计题程序设计题2n n编程,输入x值,按下式计算并输出y值n nx+3 x3n nY=f(x)= x2 1=x=3n n x 0x1n n 0 x=02024/8/程序设计题程序设计题3n n编制通用函数过程,计算Double类型一维数组所有元素的平均值。

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 高等教育 > 其它相关文档

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号