第6章-VB数组及应用课件

上传人:hloru****lorv6 文档编号:241298615 上传时间:2024-06-16 格式:PPT 页数:36 大小:522.59KB
返回 下载 相关 举报
第6章-VB数组及应用课件_第1页
第1页 / 共36页
第6章-VB数组及应用课件_第2页
第2页 / 共36页
第6章-VB数组及应用课件_第3页
第3页 / 共36页
点击查看更多>>
资源描述
学习要求1掌握数组的概念2掌握一维数组的定义、引用和应用3掌握多维数组的定义和二维数组的应用4掌握控件数组的定义和应用学习要求1掌握数组的概念6.1 数组的概念 在实际应用过程中,将一批相互有联系、有一定顺序、同一类型和具有相同性质的数据采用集合进行定义和存储,这样的集合就是数组。VisualBasic6.0中的数组,按不同方式可分为以下几类:(1)按数组元素的个数是否可变可分为:定长数组和动态数组。(2)按数组元素的数据类型可分为:数值型数组、字符型数组和变体数组等。(3)按数组的维数可分为:一维数组、二维数组和多维数组。6.1数组的概念在实际应用过程中,将一批相互有联系、有6.2.1一维数组的声明VisualBasic6.0中所有使用的数组在引用前,必须先声明。一维数组的声明包括数组变量的定义、数组的元素个数和元素的数据类型。其格式为:(1)Dim数组变量名(元素个数)As数据类型(2)Dim数组变量名(下界to上界)As数据类型(3)Dim数组变量名(元素个数)(4)Dim数组变量名(下界to上界)6.2.1一维数组的声明VisualBasic6.0中所(1)数组元素变量的赋值使用“=”对变量赋值使用InputBox函数对变量赋值使用随机函数Rnd对数组元素变量赋值,(2)使用表达式进行运算或给其他变量进行赋值。(3)数组元素变量的输出,可使用Print命令或MsgBox函数来输出数组中的元素值。6.2.1一维数组的引用(1)数组元素变量的赋值6.2.1一维数组的引用6.2.2 一维数组-给数组元素赋初始值 1、使用键盘给每个元素输入数据。其基本语句为Option Base 1Option Base 1 Dim a(10)As Integer Dim a(10)As Integer For I=1 to 10 For I=1 to 10 a(i)=val(InputBox(a(i)=val(InputBox(“请输入第请输入第”&I&I&“个元素个元素”)Next INext I6.2.2一维数组-给数组元素赋初始值1、使用键盘6.2.2 一维数组-给数组元素赋初始值 2、给每个元素赋于随机数,这个算法主要用于测试程序是否可行。Option Base 1 Option Base 1 Dim a(10)As Integer Dim a(10)As Integer For I=1 to 10 For I=1 to 10 a(i)=Int(Rnd*90)+10 a(i)=Int(Rnd*90)+10 Next I Next I6.2.2一维数组-给数组元素赋初始值2、给每个元6.2.2 一维数组-给数组元素赋初始值 3、使用Array函数为数组元素赋值,其格式为:数组名=Array(元素列表)说说明明:使使用用ArrayArray函函数数为为数数组组元元素素赋赋值值时时,它它只只能能声声明明为为变体型变量或动态数组,数组的长度由输入的元素个数决定。变体型变量或动态数组,数组的长度由输入的元素个数决定。6.2.2一维数组-给数组元素赋初始值3、使用Ar6.2.2 6.2.2 一维数组一维数组-计算所有数组元素的和或平均计算所有数组元素的和或平均值值 将所有数组元素赋值后,可使用For循环语句语句首先计算数组中n个元素的和,然后计算这n个元素的平均值。Option Base 1Option Base 1Dim a(10)As IntegerDim a(10)As IntegerDim s as integer,aver as singleDim s as integer,aver as single数组元素的赋值数组元素的赋值For I=1 to 10For I=1 to 10 S=s+a(i)S=s+a(i)Next INext IAver=s/10Aver=s/10结果的输出结果的输出6.2.2一维数组-计算所有数组元素的和或平均值将6.2.2 6.2.2 一维数组一维数组-计算数组元素的最大值、最小计算数组元素的最大值、最小值值 l首先将数组中第一个元素值赋值于最大值变量max和最小值变量min,然后从第2个元素到最后一个元素为止,逐个与max或min比较,与比max要大,则将该元素赋值于max;若比min要小,则将该元素赋值于min。Option Base 1Option Base 1Dim a(10)As IntegerDim a(10)As IntegerDim max As Integer,Min As IntegerDim max As Integer,Min As Integer数组元素的赋值数组元素的赋值max=a(1)max=a(1)min=a(1)min=a(1)For i=2 to 10For i=2 to 10 If a(i)max then If a(i)max then Max=a(i)Max=a(i)End if End if If a(i)min then If a(i)a(j)then p=j Next j T=a(p):a(p)=a(j):a(j)=T Next i 数组元素的输出End Sub6.2.2一维数组-对数组中所有元素选择法排序选Priv6.2.2 6.2.2 一维数组一维数组-对数组中所有元素冒泡法排序对数组中所有元素冒泡法排序图6-3(0)排序前的状态6.2.2一维数组-对数组中所有元素冒泡法排序6.2.2 6.2.2 一维数组一维数组-对数组中所有元素冒泡法排序对数组中所有元素冒泡法排序图-3(3)与比较PPP交换交换交换交换交换交换图6-3(1)与 比较图6-3(2)与 比较图6-3(3)与 比较6.2.2一维数组-对数组中所有元素冒泡法排序图-36.2.2 6.2.2 一维数组一维数组-对数组中所有元素冒泡法排序对数组中所有元素冒泡法排序P交换交换P交换交换图6-3(4)与比较图6-3(5)与比较6.2.2一维数组-对数组中所有元素冒泡法排序6.2.2 6.2.2 一维数组一维数组-对数组中所有元素冒泡法排序对数组中所有元素冒泡法排序图6-3(6)排序后的状态6.2.2一维数组-对数组中所有元素冒泡法排序6.2.2 6.2.2 一维数组一维数组-对数组中所有元素冒泡法排序对数组中所有元素冒泡法排序选择法排序的关键语句Private Sub Form1_Click()Private Sub Form1_Click()数组元素的输入数组元素的输入For I=1 to n-1For I=1 to n-1 For j=1 to n-i For j=1 to n-i If a(j)a(j+1)then If a(j)a(j+1)then T=a(j)T=a(j)a(j)=a(j+1)a(j)=a(j+1)a(j+1)=T a(j+1)=T end if end if Next j Next j Next I Next I 数组元素的输出数组元素的输出End SubEnd Sub6.2.2一维数组-对数组中所有元素冒泡法排序选Priv6.2.2 6.2.2 一维数组一维数组数组元素的输出数组元素的输出以每行10个元素输出For I=1 to n Print a(i);If I mod 10=0 Then PrintNext I6.2.2一维数组数组元素的输出以每行10个元素输出6.2.3 动态数组 建立动态数组的基本语句有:Dim数组名()As数据类型Dim变量名As整型变量名=Val(InputBox(“请指定数组的长度”)或变量名=ReDim数组名(变量名)或ReDimPreserve数组名(变量名)6.2.3动态数组建立动态数组的基本语句有:6.2.3 动态数组使用动态数组后,由于数组的长度随程序的运行在更改,若要获取数组长度,需引入两个函数,分别是Ubound(数组变量名)和Lbound(数组变量名)。(1)Ubound(数组变量名)函数返回数组的上界,即数组下标的最大值。(2)Lbound(数组变量名)。返回数组的下界,即数组下标的最小值。使用这两个函数的返回值,可得到数组的长度n=Ubound(数组变量名)-Lbound(数组变量名)。6.2.3动态数组使用动态数组后,由于数组的长度随程序的6.3 二维数组二维数组的声明(1)Dim 数组变量名(第一维元素个数,第二维元素个数)As 数据类型(2)Dim数组变量名(第一维元素下界 to 上界,第二维元素下界 to 上界)As 数据类型(3)Dim 数组变量名(第一维元素个数,第二维元素个数)(4)Dim数组变量名(第一维元素下界to上界,第二维元素下界to上界)6.3二维数组二维数组的声明(1)Dim数组变量名(第6.3.2 二维数组为数组元素赋值(1)使用键盘给每个元素输入数据Option Base 1Option Base 1 Dim a(3,4)As Integer Dim a(3,4)As Integer For I=1 to 3 For I=1 to 3 For j=1 to 4 For j=1 to 4 a(i,j)=val(InputBox(a(i,j)=val(InputBox(“请输入第请输入第”&I&I&“个元素个元素”)Next j Next jNext INext I6.3.2二维数组为数组元素赋值(1)使用键盘给每个元素6.3.2 二维数组为数组元素赋值(2)给每个元素赋于随机数,这个算法主要用于测试程序是否可行 Option Base 1 Option Base 1 Dim a(3,4)As Integer Dim a(3,4)As Integer For I=1 to 3 For I=1 to 3 For j=1 to 4 For j=1 to 4 a(i,j)=Int(Rnd*90)+10 a(i,j)=Int(Rnd*90)+10 Next j Next jNext INext I6.3.2二维数组为数组元素赋值(2)给每个元素赋于随机6.3.2二维数组计算二维表格每列的总和与平均值 Option Base 1Option Base 1Dim a(3,4)As IntegerDim a(3,4)As IntegerDim b(4)as single,c(4)as singleDim b(4)as single,c(4)as single二维数组元素的赋值二维数组元素的赋值For I=1 to 3For I=1 to 3 For j=1 to 4 For j=1 to 4 b(i)=b(i)+a(I,j)b(i)=b(i)+a(I,j)Next j Next j c(i)=b(i)/4 c(i)=b(i)/4Next INext I输出运算结果输出运算结果6.3.2二维数组计算二维表格每列的总和与平均值Opti6.3.2 二维数组矩阵的转置(1 1)若)若A A是一个是一个n*nn*n的方阵,则不必定义新的二维数组,的方阵,则不必定义新的二维数组,关键语句如下:关键语句如下:for i=1 to nfor i=1 to n for j=1 to i-1 for j=1 to i-1 T=a(i,j):a(i,j)=a(j,i):a(j,i)=T T=a(i,j):a(i,j)=a(j,i):a(j,i)=TNext j,iNext j,i6.3.2二维数组矩阵的转置(1)若A是一个n*n的方(2)若A是一个m*n(mn)的矩阵,则需定义一个新数组b,其中b数组的第一维长度与a数组的第二维长度相同,b数组的第二维长度与a数组的第一维长度相同。关键语句如下:Dim a(2,5)As Integer,b(5,2)As Integera数组元素的输入For I=1 to 2 For j=1 to 5 B(j,I)=a(I,j)Next j,I b数组元素的输出6.3.2二维数组矩阵的转置(2)若A是一个m*n(mn)的矩阵,则需定义一个新数组b6.3.2二维数组杨辉三角形 基本思想是每行的第一列和对角线所在单元格上的值均为1,从第三行开始,除首列和对角线的单元格除外,其他单元格的值均等于前一行当前列单元格的值与前一行前一列单元格的值之和6.3.2二维数组杨辉三角形基本思想是每行的第一列和6.3.2二维数组杨辉三角形算法Dim a()As IntegerDim a()As Integern=Val(InputBox(n=)n=Val(InputBox(n=)ReDim a(n,n)ReDim a(n,n)For i=1 To nFor i=1 To n a(i,1)=1 a(i,1)=1 a(i,i)=1 a(i,i)=1Next iNext iFor i=3 To nFor i=3 To n For j=2 To n-1 For j=2 To n-1 a(i,j)=a(i-1,j-1)+a(i-1,j)a(i,j)=a(i-1,j-1)+a(i-1,j)Next j Next j Next i 数组元素的输出数组元素的输出6.3.2二维数组杨辉三角形算法Dima()AsIn6.3.2二维数组二维数组的输出 二维数组元素的输出主要采用的是双重循环结构进行设计,若要对二维数组a(m,n)数组输出,设下标从1开始,则主要语句有:For i=1 to m For j=1 to n Print a(I,j);Next j PrintNext i6.3.2二维数组二维数组的输出二维数组元素的输出主要采6.4.1控件数组的概念 控件数组是由一组相同类型的控件组成的,它们共同拥有一个相同的控件名称,具有相同的属性设置,它们共享同样的事件过程。在建立时系统自动给每一个控件分配一个唯一的索引号(index)。一个控件数组至少应有一个元素,元素数目可在系统允许的范围内增加,在控件数组中可用的最大索引号为32767。6.4.1控件数组的概念控件数组是由一组相同类型的控件组6.4.1控件数组的建立步骤(1)在窗体中创建一个控件对象,可使用属性窗口更改该控件名称。(2)在窗体的其他位置,单击鼠标右键,选择“粘贴”命令,在出现的“已有了一个控件。创建一个控件数组吗”的对话框,单击“是”按钮后,即可创建一个控件数组,并自动创建第二个元素,原控件的名称自动更改为“控件名(0)”,当前创建的的控件名为“控件名(1)”。(3)依此类推。可创建控件数组中的其他元素。6.4.1控件数组的建立步骤(1)在窗体中创建一个控件对象,6.4.2 为控件数组中的各控件元素相同的属性名赋不同值 若为命令按钮的控件数组中的每个按钮设置“红绿蓝黑白”5个颜色值,则可采用如下代码:Private Sub Form_Load()c=红绿蓝黑白 For i=0 To 4 Command1(i).Caption=Mid(c,i+1,1)+色 Next iEnd Sub6.4.2为控件数组中的各控件元素相同的属性名赋不同值若Private Sub Command1_Click(Index As Integer)Private Sub Command1_Click(Index As Integer)Select Case Index Select Case Index Case 0 Case 0 Form1.BackColor=vbRed Form1.BackColor=vbRed Case 1 Case 1 Form1.BackColor=vbGreen Form1.BackColor=vbGreen Case 2 Case 2 Form1.BackColor=vbBlue Form1.BackColor=vbBlue Case 3 Case 3 Form1.BackColor=vbBlack Form1.BackColor=vbBlack Case Else Case Else Form1.BackColor=vbWhite Form1.BackColor=vbWhite End Select End SelectEnd SubEnd Sub6.4.2控件数组中的各控件元素共享相同事件 PrivateSubCommand1_Click(Ind
展开阅读全文
相关资源
相关搜索

最新文档


当前位置:首页 > 办公文档 > 教学培训


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

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


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