365bet手机在线网页-bt365娱乐官网-365手机版

365手机版

Visual Basic 函数

Visual Basic 函数

Visual Basic 函数函数,就是是在调用时一起执行任务的一组语句。

VB 有两种类型的程序:

函数子程序或 Subs

注意: 函数返回一个值,而 Subs 不返回任何值。

定义一个函数Function 语句用于声明函数的名称,参数和函数体。Function 语句的语法是:

[Modifiers] Function FunctionName [(ParameterList)] As ReturnType [Statements]End Function其中,

Modifiers - 指定函数的访问级别; 可能的值有:Public, Private, Protected, Friend, Protected Friend 以及有关重载,重写,共享的信息。FunctionName - 表示函数的名称。ParameterList - 指定参数的列表。ReturnType - 指定函数返回的变量的数据类型。

实例下面的代码片段显示了一个函数:FindMax,它取两个整数值作为参数并返回两个中较大的那一个:

Function FindMax(ByVal num1 As Integer, ByVal num2 As Integer) As Integer ' local variable declaration */ Dim result As Integer If (num1 > num2) Then result = num1 Else result = num2 End If FindMax = resultEnd Function

函数返回值在 VB 中,函数可以通过两种方式将值返回给调用代码:

通过使用 return 语句通过赋值给函数名称

以下实例演示如何使用 FindMax 函数:

Module myfunctions Function FindMax(ByVal num1 As Integer, ByVal num2 As Integer) As Integer ' local variable declaration */ Dim result As Integer If (num1 > num2) Then result = num1 Else result = num2 End If FindMax = result End Function Sub Main() Dim a As Integer = 100 Dim b As Integer = 200 Dim res As Integer res = FindMax(a, b) Console.WriteLine("Max value is : {0}", res) Console.ReadLine() End SubEnd Module运行一下

结果如下:

Max value is : 200

递归函数一个函数可以调用它自己(自身),这被称为 递归函数。

以下是一个使用递归函数计算给定数字的阶乘的实例:

Module myfunctions Function factorial(ByVal num As Integer) As Integer ' local variable declaration */ Dim result As Integer If (num = 1) Then Return 1 Else result = factorial(num - 1) * num Return result End If End Function Sub Main() 'calling the factorial method Console.WriteLine("Factorial of 6 is : {0}", factorial(6)) Console.WriteLine("Factorial of 7 is : {0}", factorial(7)) Console.WriteLine("Factorial of 8 is : {0}", factorial(8)) Console.ReadLine() End SubEnd Module运行一下

结果如下:

Factorial of 6 is : 720Factorial of 7 is : 5040Factorial of 8 is : 40320

参数数组有时,在声明一个函数或子过程的时候,有时不确定传递的参数的数量。 VB 参数数组(或参数数组)可以解决这个问题。

以下实例演示了它的用法:

Module myparamfunc Function AddElements(ParamArray arr As Integer()) As Integer Dim sum As Integer = 0 Dim i As Integer = 0 For Each i In arr sum += i Next i Return sum End Function Sub Main() Dim sum As Integer sum = AddElements(512, 720, 250, 567, 889) Console.WriteLine("The sum is: {0}", sum) Console.ReadLine() End SubEnd Module结果如下:

The sum is: 2619

将数组作为函数参数传递可以在 VB 中传递一个数组作为函数的参数。

实例Module arrayParameter Function getAverage(ByVal arr As Integer(), ByVal size As Integer) As Double 'local variables Dim i As Integer Dim avg As Double Dim sum As Integer = 0 For i = 0 To size - 1 sum += arr(i) Next i avg = sum / size Return avg End Function Sub Main() ' an int array with 5 elements ' Dim balance As Integer() = {1000, 2, 3, 17, 50} Dim avg As Double 'pass pointer to the array as an argument avg = getAverage(balance, 5) ' output the returned value ' Console.WriteLine("Average value is: {0} ", avg) Console.ReadLine() End SubEnd Module运行一下

结果如下:

Average value is: 465.6

← 最全参数对比 快播小方四大优势全解析 暗黑3代理服务器哪个速度快?低延迟畅玩暗黑3 →

相关阅读

我们的少年时代

中央广播电视总台 央视网 版权所有 违法和不良信息举报 京ICP证060535号 京公网安备 11000002000018号 京网文[2014]0383-083号 网上传播视听节目许可证

📅 07-18 🌿 365手机版

汽车加装 esp 系统多少钱

汽车加装 ESP 系统的价格因多种因素而异。 一般来说几万元左右能搞定但具体费用得看车型和品牌。 像斯柯达明锐订车时由厂家安装ESP、上坡辅

📅 07-09 🌿 365bet手机在线网页

资金量少,该如何开始投资?| 问答

今天我们来回答读者 @好像叫广龙 的问题:资金的多少所形成的投资逻辑是不一样的,比如一个只有 1 万资金的人是不允许自己碰高价值股票的

📅 08-14 🌿 bt365娱乐官网