维数组应用实例.ppt
《维数组应用实例.ppt》由会员分享,可在线阅读,更多相关《维数组应用实例.ppt(53页珍藏版)》请在三一办公上搜索。
1、,数组及应用,Visual Basic 程序设计,Visual Basic 程序设计,01,掌握数组的定义,02,重点掌握一维数组的定义、引用和应用,03,掌握控件数组的定义和应用,学习目标,Visual Basic 程序设计,实例概述,在实际应用中,常常需要处理类型相同的一批数据。例如,为了处理100个员工的工资,可以用S(1),S(2),S(3),S(100)来分别代表每个员工的工资,其中S(1)代表第一个员工的工资,S(2)代表第二个员工的工资,以此类推,Visual Basic 程序设计,由生活中的实例,我们不难得出,像员工和员工工资一样的类似的很多数据,都具有相互密切关系。在VB中,
2、把一组相互关系密切的数据放在一起并用一个同意的名字作为标志,这就是数组。,实例概述,Visual Basic 程序设计,在VB中,把一组具有同一名字、不同下标的下标变量称为数组。一个数组可遗憾又若干个下标变量。下标用来指出某个数组元素在数组中的位置。如S(1 to 100)中S是数组名,可以表示逻辑上相关的一组数,其中,“1 to 100”称为下标,可以表示该数组中的各个元素。数组并不是一种数据类型,而是一组有序的同类型数据的集合。利用数组,可以方便的组织和使用数据。,Visual Basic 程序设计,数组概念,数组元素,下标,数组维数,数组类型,数组中的每一个数据称为数组元素。用数组名和该
3、数据在数组中的序号来标识。,下标表示顺序号(即序号),每个数组有唯一的顺序号,下标不能超过数组声明的上、下界范围。,由数组元素中下标的个数决定,一个下标表示一维数组(下面将会重点学习),两个下标表示二维数组。VB中有一维数组,二维组最多60维数组。,按数组占用存储空间的方式不同,分为两种数组:静态数组和动态数组。两种数组的定义方法不同,使用方法也略有不同。,有关基本概念,Visual Basic 程序设计,注意,下标可以是整形的常数、变量、表达式。如:G(8)B(I)C(3+K)下标还可以是下标变量 如:A(A(5)令A(5)=4 则 A(A(5)=A(4)下标的取值范围是:下界To上界,缺省
4、下界时,系统默认取 0。,Visual Basic 程序设计,只用一个下标就能确定某个数组元素在数组中的位置,这样的数组称为一维数组。,一维数组,用两个(多个)下标才能确定某个数组元素在数组中的位置,则数组称为二维(多维)数组。,二维数组,数组分类,Visual Basic 程序设计,数组声明,数组必须先声明后使用。声明数组的目的是通知计算机为其留出所需要的空间,用来存储数组元素。在计算机中,数组占据一块连续的内存区域,数组名是这个区域的名称,区域的每个单元都有自己的地址,该地址用下标表示。可声明的内容包括数组名、类型、维数、数组大小。,Visual Basic 程序设计,1)、数组是一组相同
5、类型的元素的集合;,数组特点,2)、数组中各元素有先后顺序,它们在内存中按排列顺序连续存储在一起;,3)、所有的数组元素是用一个变量名命名的一个集合体,而且每一个数组元素在内存中独占一个内存单元,可视为同一个内存变量。为了区分不同的数组元素,每一个数组元素都是通过数组名和下标来访问的,如A(1,2),B(5)。,4)、使用数组时必须对数组进行“声明”,即先声明后使用。所谓声明,就是对数组名、数组元素的数据类型、数据元素的个数进行定义。,Visual Basic 程序设计,1.格式 Public|Private|Dim 数组名(维数定义)As 类型,2.功能 声明数组名称、维数、维大小、类型。为
6、数组分配存储空间。例:定义数组G保存全班40名同学的英语成绩 Dim G(1 To 40)As Integer,一维数组的定义,Visual Basic 程序设计,3.说明1)Public|Private|Dim:在标准模块的通用声明段使用Public语句建立一个全局级数组;在模块的通用声明段使用Private语句或Dim语句建立一个模块级数组;在过程中用Dim语句建立一个过程级数组。2)数组名:需遵循变量命名约定。3)“维数定义”:下界1 To 上界1,下界2 To 上界2,Visual Basic 程序设计,如果下界省略,则使用默认下界定义默认下界:Option Base 0|1不加任何定
7、义时,默认下界为0数组元素个数:(上界1-下界1+1)*(上界2-下界2+1)*4):Integer Long Single Double Boolean String String*n Curency Byte Date Variant Object 用户定义类型,Visual Basic 程序设计,5)数组在定义后自动被初始化 例如:将数值型数组元素值置为0;将字符串类型数组元素值置为零长度字符串6)静态数组被定义后,VB为其分配固定大小的存储空间,在运行期大小不能改变。,Visual Basic 程序设计,数组概念释义,dim mark(1 to 100)as integer 声明了一个
8、一维定长数组,数组的名字为mark,类型为整型;共有100个元素,下标的取值范围:1100。mark的数组元素依次为mark(1)、mark(2)、mark(100);mark数组内存分配示意图:,Visual Basic 程序设计,mark(1),mark(2),mark(i),mark(99),mark(100),每组数组元素有一个唯一的顺序号,下标不能超出数组声明时的上、下界范围。一个下标表示一维数组;多个下标,表示多维数组。下标可以是整型的常数、变量、表达式;一般情况下,数组中的各元素类型必须相同;但若数组类型为Variant时,可包含不同类型的数据。,Visual Basic 程序设
9、计,数组的定义方式:Dim:用在窗体模块或标准模块及过程中,定义窗体或标准模块级数组;ReDim:用来重新定义动态数组;Static:用来说明该数组为静态数组;Global(Public):用在全局模块中(标准模块)中,说明数组为全局的;,Visual Basic 程序设计,1、一维数组:一个数组若只有一个下标就能确定一个数组元素的数组中的位置 定义形式:Dim 数组名(下标下界 To 下标上界)As 类型名称 如:Dim a(1 to10)as integer Dim b(10)as integer,Visual Basic 程序设计,例:Dim C(9)As Integer 一维整型数组;
10、下界0,上界为9 元素:C(0)C(1)C(2)C(9)例:Dim A(-4 TO 10)As Integer 一维整型数组;下界-4,上界 10 元素 A(-4)A(-3).A(0)A(1).A(10)例:DIM M(-3 TO 10)一维可变类型数组 例:CONST Y1=10 CONST Y2=50 DIM ABC(Y1 TO Y2)AS INTEGER,Visual Basic 程序设计,一维数组应用实例,Visual Basic 程序设计,例【7-1】利用一维数组统计一个班学生的成绩在09、1019、2029、9099以及100各分数段的人数分布 解题思路:定义一个有11个元素的一维
11、数组a(0 to 10),a(0):09分的学生人数;a(1):1019分的学生人数;a(2):2029分的学生人数;a(9):9099分的学生人数;a(10):100分的学生人数;根据学生成绩score,计算int(score/10),将其分类到相应的数组元素中。,Visual Basic 程序设计,实例一 分类统计,例【7-2】输入若干个学生的成绩,统计不及格人数和优秀人数。设计界面:,Visual Basic 程序设计,Text 1,Command 1,Picture 1,Visual Basic 程序设计,设运行时学生成绩直接输入到文本框Text1中,各成绩之间用逗号分隔。代码首先使用
12、Split函数将文本框Text1中输入的成绩分离开,保存到数组A中。引入计数变量设两个计数变量num1和num2,分别用来保存不及格学生人数和优秀学生人数。将计数变量初始化为0,统计过程逐一取数组元素进行判断,如果数组元素的值小于60,则让num1累加1,如果数组元素的值大于或等于90,则让num2累加1。,分析:,Private Sub Command1_Click()Dim A,N As Integer Dim num1 As Integer,num2 As Integer A=Split(Text1.Text,)N=UBound(A)num1=0:num2=0 For i=0 To N
13、Select Case Val(A(i)Case Is=90 num2=num2+1 End Select Next i,Visual Basic 程序设计,代码设计,显示统计结果 Picture1.Cls 定义打印位置 Picture1.CurrentX=100 运行界面:Picture1.CurrentY=100 Picture1.Print 不及格人数:;num1;_ Tab(18);优秀人数:;num2End Sub,Visual Basic 程序设计,例【7-3】输入若干名学生的成绩,求平均分、最高分、最低分。设计界面:,Visual Basic 程序设计,Text 1,Text 2
14、,Text 3,Text 4,实例二 求平均分,最高分,最低分,分析:,假设运行时输入到文本框Text1中的各成绩之间用逗号分隔。代码首先使用Split函数将文本框Text1中输入的成绩分离开,保存到数组A中,然后进行求值。求平均分时只需先求数组所有元素之和,再除以数组元素的个数即可。求最高分、最低分的问题实际上就是求一组数据的最大值、最小值问题。,Visual Basic 程序设计,Visual Basic 程序设计,求最大值的方法:1)设一个存放最大值的变量MaxNum,其初值为数组的第一个元素,即MaxNum=A(0);2)依次将MaxNum与A(1)到A(N)的所有数据进行比较,如果数
15、组中的某个数A(I)大于MaxNum,则用该数替换MaxNum,即MaxNumx=A(I),所有数据比较完后,MaxNum中存放的数即为整个数组的最大数。求最小值的方法与求最大值的方法类似。,Private Sub Command1_Click()Dim A,N As Integer Dim MaxNum As Integer,MinNum As _ Integer,Average As Single A=Split(Text1.Text,“,”)N=UBound(A)Total=0 MaxNum=Val(A(0)MinNum=Val(A(0),Visual Basic 程序设计,“求值”按钮
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 数组 应用 实例

链接地址:https://www.31ppt.com/p-6373926.html