第7章数组电子课件 中职 高教版 Visual Basic程序设计(第4版).pptx
《第7章数组电子课件 中职 高教版 Visual Basic程序设计(第4版).pptx》由会员分享,可在线阅读,更多相关《第7章数组电子课件 中职 高教版 Visual Basic程序设计(第4版).pptx(33页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、第7章 数 组电子课件 中职 高教版 Visual Basic程序设计(第4版)单元七单元七单元七单元七 数数数数 组组组组单元七单元七 数数 组组数数数数 组组组组 基基基基 础础础础 知知知知 识识识识 1 1 1 1静静静静 态态态态 数数数数 组组组组 2 2 2 2动动动动 态态态态 数数数数 组组组组 3 3 3 3控控控控 件件件件 数数数数 组组组组 4 4 4 4常常常常 用用用用 算算算算 法法法法 实实实实 例例例例 5 5 5 57.1 数组基础知识1.什么是数组 在程序在程序设计中,将一中,将一组排列有序、个数有限的数据排列有序、个数有限的数据作作为一个整体,用一个一
2、个整体,用一个统一的名字来表示一的名字来表示,这些有序些有序数据的全体称数据的全体称为数数组。在在VB中,中,为了确定各数据与数了确定各数据与数组中每一元素的一一中每一元素的一一对应关系,必关系,必须给数数组中的中的这些数些数编号,即号,即顺序号序号(用下(用下标来指出来指出顺序号,数序号,数组也称下也称下标变量)。因此,量)。因此,数数组是用一个名字代表是用一个名字代表顺序排列的一序排列的一组数。数。数数组由数由数组名和名和圆括号括号组成,成,圆括号里括起来的是括号里括起来的是顺序号:序号:cj (5)数数组名名 顺序号序号2.数组名的命名规则 数数组名的命名名的命名规则与与简单变量的命名量
3、的命名规则一一样,即,即由由140个字符个字符组成,成,组成的字符可以成的字符可以是字母、数字或小数点,并且必是字母、数字或小数点,并且必须以字母开以字母开头,如果有如果有类型申明符型申明符时,必,必须放在尾部。放在尾部。例如:例如:a,x,xscj%等。等。3.什么是数组的维数数数组中下中下标的个数的个数称称为数数组的的维数数。一一维数数组:数:数组中的所有元素,能按行、列中的所有元素,能按行、列顺序排成序排成一行,即用一个下一行,即用一个下标确定它确定它们各自所各自所处的位置。的位置。二二维数数组:数:数组中的所有元素,能按行、列中的所有元素,能按行、列顺序排成序排成一个矩一个矩阵,用两个
4、下,用两个下标才能确定它才能确定它们所所处的位置。的位置。三三维数数组:由三个下:由三个下标才能确定所才能确定所处位置。位置。依此依此类推,有多少个下推,有多少个下标的数的数组,就构成多少,就构成多少维的的数数组,如四,如四维数数组、五、五维数数组等。通常又把二等。通常又把二维以上以上的数的数组称称为多多维数数组。例如:例如:a(10)一一维数数组 x(2,3)二二维数数组 b(4,5,6)三三维数数组4.什么是数组元素 在同一数在同一数组中,构成中,构成该数数组的元素称的元素称为数数组元素元素。组成数成数组的各个元素一般的各个元素一般为变量,由于量,由于这些些变量共用量共用一个一个变量名,即
5、所在的数量名,即所在的数组名,因此,必名,因此,必须要通要通过下下标才能相互区才能相互区别,故数,故数组元素也称元素也称为下下标变量。量。在在VB中,引用数中,引用数组中的某一元素,要指出数中的某一元素,要指出数组名和名和用括号括起来的数用括号括起来的数组元素在数元素在数组中的位置(中的位置(顺序号)序号)的下的下标。即下。即下标变量的量的标识为数数组名名(下下标表表)例如:例如:a(5)代表数代表数组a中中顺序号序号为5的那个元素。的那个元素。x(12)代表数代表数组x中中顺序号序号为12的那个元素。的那个元素。c(2,3)代表数代表数组c中第中第2排第排第3列的那个元素。列的那个元素。5.
6、数数组的的类型型 VB中,数据有多种数据中,数据有多种数据类型,相型,相应的数的数组也有多种也有多种类型。可以声明任何基本数据型。可以声明任何基本数据类型的数型的数组,包括用,包括用户自定自定义类型和型和对象象变量,但是一个数量,但是一个数组中的所有元素中的所有元素应该具具有相同的数据有相同的数据类型。型。但是,当数但是,当数组类型型为Variant(变体型)体型)时,各个元,各个元素能素能够包含不同包含不同类型的数据(字符串、数型的数据(字符串、数值等)。等)。6.数数组的分的分类 在在VB中,根据数中,根据数组元素的个数能否元素的个数能否变化,数化,数组分分为静静态数数组和和动态数数组。静
7、静态数数组:数:数组元素的个数固定不元素的个数固定不变。动态数数组:数:数组元素的个数在运行元素的个数在运行时可以改可以改变。返回目录7.2 静态数组7.2.1 声明静态数组的语法格式Dim 数数组名名(维数定数定义)As 类型型 (1)维数定数定义指定数指定数组的的维数以及各数以及各维的范的范围:下下标下界下界1To 下下标上界上界1,下下标下界下界2To 下下标上界上界2.如果不指定如果不指定下下标下界下界,则数数组的下界由的下界由Option Base语句控句控制。制。Option Basen 其中,其中,n只能只能为0或或1。如果没有使用如果没有使用Option Base语句,句,则缺
8、省的下界缺省的下界为0。例如:。例如:Dim a(3)As Integer 4个元素,下个元素,下标范范围为0到到3 Dim b(2,3)As Double 12个元素,个元素,34=12 如果使用如果使用Option Base 1语句,句,例如:例如:Option Base 1 缺省下界缺省下界为1 Dim a(3)As Integer 3个元素个元素 Dim b(2,3)As Double 6个元素个元素7.2.2 一维静态数组的程序设计假假设某小某小组有有10个学生,个学生,现在数学在数学课教教师要要计算算这10个个学生的学生的总分、平均分。分、平均分。请编写程序来帮助老写程序来帮助老师
9、进行行计算。算。在事件程序下拉列表框中在事件程序下拉列表框中选“(声明声明)”,输入下面代入下面代码:Option Base 1Dim a(1 To 10)As SinglePrivate Sub Command1_Click()Dim i As Integer,total As Single,average As Single For i=1 To 10 a(i)=Val(InputBox(请输入第入第&Str(i)&个学生的个学生的成成绩,输入成入成绩)total=total+a(i)Next i average=total/10 Label1.Caption=Label1.Caption
10、+Format(total)Label2.Caption=Label2.Caption+Format(average)End Sub7.2.3 二维静态数组的程序设计对两个相同两个相同阶数的矩数的矩阵进行加法运算。提示:两行加法运算。提示:两个相同个相同阶数的矩数的矩阵A和和B相加,是将相相加,是将相应位置上位置上的元素相加后放到同的元素相加后放到同阶矩矩阵C的相的相应位置。位置。在在“通用通用”段声明数段声明数组:Dim a(5,3)As Integer,b(5,3)As Integer编写写“重置重置”按按钮Command1的的Click事件代事件代码为:Private Sub Comma
11、nd1_Click()For n=1 To 5 控制矩控制矩阵行数行数 For m=1 To 3 控制矩控制矩阵列数列数 x=Int(Rnd*100):a(n,m)=Val(x)x=Int(Rnd*100):b(n,m)=Val(x)Next Next Picture1.Cls:Picture2.Cls:Picture3.Cls Picture1.CurrentY=80:Picture2.CurrentY=80 For n=1 To 5 For m=1 To 3 Picture1.Print Format(a(n,m),);Picture2.Print Format(b(n,m),);Next
12、 Picture1.Print:Picture2.Print NextEnd Sub “计算算”按按钮Command2的的Click事件代事件代码为:Private Sub Command2_Click()Dim c(5,3)As Integer For i=1 To 5 For j=1 To 3 c(i,j)=a(i,j)+b(i,j)Next Next Picture3.Cls Picture3.CurrentY=80 For n=1 To 5 For m=1 To 3 Picture3.Print Format(c(n,m),);Next Picture3.Print NextEnd S
13、ub7.2.4 数组中的循环语句For EachNext 使用数使用数组中的循中的循环语句句For Each.Next,求,求1+2+3+100的的值。Private Sub Command1_Click()Dim x(100),a For i=1 To 100 x(i)=i Next i For Each a In x()s=s+a Next Label1.Caption=sEnd Sub For Each.Next语句的句的语法格式法格式为:For Each成成员In数数组 语句句组 Exit ForNext 成成员 其中,其中,成成员是一个是一个Variant(变体型)体型)变量,代表数
14、量,代表数组中的每个元素。中的每个元素。数数组是一是一个数个数组名,没有括号和上下界。名,没有括号和上下界。返回目录7.3 动态数组7.3.1 声明动态数组的语法格式 (1)声明一个未指明大小及声明一个未指明大小及维数的数数的数组。语法格式法格式为:Public|Private|Dim|Static 数数组名名()As 类型型 (2)用用ReDim语句分配句分配实际的元素个数。的元素个数。语法格式法格式为:ReDim Preserve 数数组名名(维数定数定义)As类型型 例如,第一次声明在模例如,第一次声明在模块级所建立的所建立的动态数数组a:Dim a()As Integer 然后,在然后
15、,在过程中程中给数数组分配空分配空间:Private Sub Form_Activate().ReDim a(9,19)End Sub 这里的里的ReDim语句句给a分配一个分配一个1020的整数矩的整数矩阵(元素(元素总数数为200)。)。7.3.2 保留动态数组中原数据的方法 在定在定义动态数数组的的过程中,当使用程中,当使用ReDim语句句时,将清,将清除数除数组中的原有数据。但是,有中的原有数据。但是,有时需要改需要改变数数组大小而大小而又不又不丢失数失数组中的数据,中的数据,这时就可以使用就可以使用具有具有Preserve关关键字字的的ReDim语句。句。例如,使用具有例如,使用具有
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 第7章 组电子课件 中职 高教版 Visual Basic程序设计第4版 电子 课件 高教 Basic 程序设计
限制150内