《数组4学时》ppt课件

《数组4学时》ppt课件

ID:27579570

大小:521.51 KB

页数:18页

时间:2018-12-01

《数组4学时》ppt课件_第1页
《数组4学时》ppt课件_第2页
《数组4学时》ppt课件_第3页
《数组4学时》ppt课件_第4页
《数组4学时》ppt课件_第5页
资源描述:

《《数组4学时》ppt课件》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、第五章数组(4学时)5.1数组的概念5.2静态数组及声明5.3动态数组及声明5.4数组的基本操作5.5控件数组5.6自定义数据类型5.7常用算法(二)5.8常见错误一、数组的概念1.引例例5.1若我们要求一个班100个学生的平均成绩,然后统计高于平均分的人数。按以前简单变量的使用和循环结构相结合,求平均成绩程序段如下:aver=0Fori=1To100mark=InputBox("输入"+i+"位学生的成绩")aver=aver+markNextiaver=aver/100但若要统计高于平均分的人数,则无法实现。mark是一个简单变量,存放的是最后一个学生

2、的成绩。已有知识解决方法:再重复输入成绩,带来两个问题:(1)输入数据的工作量成倍增加;(2)若本次输入的成绩与上次不同,则统计的结果不正确。解决此问题的根本方法,引入数组,始终保持输入的数据,一次输入,多次使用。二、数组的声明数组并不是一种数据类型,而是一组相同类型的变量的集合。数组必须先声明后使用。两类数组:静态(定长)数组、动态(可变长)数组1.静态数组及声明形式:Dim数组名(下标1[,下标2…])[As类型]声明了数组的名、维数、大小、类型维数:几个下标为几维数组,最多60维。下标:[下界To]上界省略下界为0,必须为常数。每一维大小:上界-下界

3、+1数组大小:每一维大小的乘积例:Dimmark(1to100)AsIntegerDimlArray(0To3,0To4)AsLong共有4×5个元素等价于:DimlArray(3,4)AsLong注意:(1)下界缺省为0,也可在重新定义数组的下界。例如:OptionBase1(2)错误的声明,下标是变量n=Inputbox(“输入n”)Dimx(n)AsSingle(3)在数组声明中的下标说明了数组的整体,即每一维的大小;而在程序其他地方出现的下标表示数组中的一个元素。两者写法形式相同,但意义不同。例如:Dimx(10)AsInteger'声明了x数组有

4、11个元素x(10)=100'对x(10)这个数组元素赋值三、动态数组及声明动态数组指在声明数组时未给出数组的大小(省略括号中的下标),当要使用它时随时用ReDim语句重新指出数组大小。形式如下:ReDim数组名(下标[,下标2…])[As类型]例:SubForm_Load()DimsArray()AsSingle…ReDimsArray(4,8)…EndSub说明:(1)Dim、Private、Public变量声明语句是说明性语句,可出现在过程内或通用声明段ReDim语句是执行语句,只能出现在过程内。(2)在过程中可多次使用ReDim来改变数组的大小,也

5、可改变数组的维数.(3)每次使用ReDim语句都会使原来数组中的值丢失,可以在ReDim语句后加Preserve参数用来保留数组中的数据,但使用Preserve只能改变最后一维的大小,前面几维大小不能改变。例5.2,求若干个学生的平均分。(4)ReDim中的下标可以是常量,也可以是有了确定值的变量。四、数组的基本操作1.数组元素的赋初值(1)用循环Fori=1To10iA(i)=0Nexti(2)Array函数DimibAsVariantib=Array("abc","def","67")Fori=0ToUBound(ib)Picture1.Printib

6、(i);"";Nexti注意:(1)利用Array对数组各元素赋值,声明的数组是可调数组或连圆括号都可省,并且其类型只能是Variant。(2)数组的下阶为零,上界由Array函数括号内的参数个数可决定,也可通过函数Ubound获得。2.数组的赋值在VB6.0中,提供了数组直接对数组的赋值。例如:Dima()AsVariant,b()AsVariant,i%a=Array(1,2,3,4,5)ReDimb(UBound(a))b=a3.数组的输出输出方阵sC中的下三角元素Fori=0To4Forj=0Toisc(i,j)=i*5+jPrintsc(i,j)

7、;"";NextjPrint'换行NextIFori=0ToUBound(a)b(i)=a(i)Nexti注意:赋值号左边的数组只能声明为Variant的可调数组或简单变量。4.求数组中最大元素及所在下标DimMaxAsInteger,iMaxAsIntegerMax=iA(1):iMax=1Fori=2To10IfiA(i)>MaxThenMax=iA(i)iMax=iEndIfNextI5.将数组中各元素交换Fori=1To102t=iA(i)iA(i)=iA(10-i+1)iA(10-i+1)=tNextI五.控件数组一组相同类型的控件组成。它们共

8、用一个控件名,具有相同的属性,建立时系统给每个元素赋一个唯一的索引

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。