Visual Basic程序设计教程 教学课件 作者 胡声艳 李为华 第6章.ppt

Visual Basic程序设计教程 教学课件 作者 胡声艳 李为华 第6章.ppt

  1. 1、本文档共26页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第6章 数 组 一.数组的基本概念   数组是Visual Basic提供的一种数据结构,它是同一类型的数据的集合(除了记录类型数组外),数组在内存中占一组连续的存储空间。数组中每一个元素具有唯一的索引号,即元素的下标,用“数组名(下标)”来标识数组中的某一个元素。数组必须先定义然后才能使用。 1.静态数组   在定义时确定了大小的数组称为静态数组。静态数组从建立到程序运行结束,数组的维数和大小是不能改变的,它在内存中使用一组连续的存储单元。 一维数组: 如果数组只有一个下标,那么这个数组称为一维数组。声明一维数组的形式如下: Dim 数组名(下标) [as 类型] (1)下标: 下标必须为常数,不能是变量或表达式。 (2)下标的形式: 下标的形式有两种,第一种是直接给出一个常数,另一种是给出一个范围:[下界 to 上界],下界最小可为?32?768,上界最大为32?767,若省略下界,则其默认值为0。一维数组元素的个数为:上界?下界+1。 (3)As类型: 说明数组的类型,省略该参数默认为是变体类型。 Dim语句定义的数组,实际上为系统编译程序提供了几种信息:数组名、数组类型、数组的维数和各维的大小,使系统分配所需要的连续存储单元。例如: Dim a(10) As integer Dim Str (?5 to 5) as String*3 首先声明了数组a是一维整型数组,有11个元素,下标的范围为0~10。若在程序中引用a(11),则系统会提示“下标越界”的错误。 接着声明了数组Str是一维字符串类型数组,有11个元素。下标的范围为?5~5,每个元素最多存放3个字符。 2.多维数组 如果一个数组有两个以上的下标,则该数组称为二维数组或多维数组。 Dim 数组名(下标1, 下标2, …)[As类型] 在数组声明中,下标关系到每一维的大小,与数组名结合在一起,说明了数组的整体。而在程序中出现的下标用于指明数组元素,与数组名结合起来表示数组中的一个元素。两者写法相同,但意义不同。在数组声明时下标只能是常数,而在程序中其他地方出现的数组元素的下标可以是变量,读者要加以区分。 3.动态数组 动态数组是在定义数组时未给出数组的大小(省略括号中的下标),在程序运行时,根据需要随时用ReDim语句重新声明数组的大小。使用动态数组的优点是可根据用户的需要,有效地利用存储空间。它是在程序执行到ReDim语句时分配存储空间的,而静态数组是在程序编译时分配存储空间的。 ReDim 数组名(下标1, 下标2, …) [As 类型] (1)在静态数组声明中的下标只能是常量,在动态数组ReDim语句中的下标可以是常量,也可以是有了确定值的变量。 (2)在过程中可以多次使用ReDim语句来改变数组的大小,也可以改变数组的维数,但不能改变数组元素的类型。 (3)每次使用ReDim语句都会使原来数组中的各元素的值丢失,可以在ReDim语句中使用Preserve参数用来保留数组中原有的数据。但使用Preserve参数后,ReDim只能改变数组最后一维的大小。 4.数组的操作 (1).数组元素的输入和输出 数组元素一般通过过循环语句、文本框控件、InputBox( )函数配合进行输入和输出。 (2).数组的清除和重新定义 静态数组一经定义,编译时便在内存中分配了相应的存储空间,从建立数组到程序运行结束,它的大小和维数是不能改变的;而动态数组是在程序的执行过程序中用ReDim语句根据用户的需要重新分配存储空间的。可能需要清除数组的内容或对数组重新定义,这时可以用Erase语句来实现。 其格式为: Erase数组名[, 数组名]…… Erase语句用来重新初化静态数组的各元素,或释放动态数组的存储空间。注意:在Erase语句中,只给出需要刷新的数组名,不带括号和下标。例如:Erase a。 【说明】 (1)当把Erase语句用于静态数组时,如果这个数组是数值型数组,则把数组中各元素置为0;如果是字符串数组,则把所有各元素置为空字符串;如果是记录数组,则根据每个元素(包括定长字符串)的类型重新进行设置。设置如表6.2所示: (2)当把Erase语句作用于动态数组时,将删除整个数组结构并释放该数组所占用的内存空间。也就是说,动态数组经Erase后即不复存在,而静态数组经Erase后仍然存在,只是其内容被清空。 (3)当把Erase语句用于变体类

文档评论(0)

开心农场 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档