- 1、本文档共77页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第6章 数组 6.1 数组的概念 6.2 数组的基本操作 6.2.1 一维数组 1. 一维数组说明 说明: 【示例】随机产生10个两位整数,找出其中最大值、最小值。 【示例】编写程序,把输入的10个整数按逆序输出。 【示例】从键盘上输入40人的考试成绩,输出高于平均成绩的分数。 【示例】从键盘上输入10个整数,把这些数按由小到大的顺序排序输出。 排序的方法很多,如选择法、冒泡法等。这里介绍最容易理解的“冒泡法”。 【例6.6】选择排序算法 选择排序共执行下面的挑选步骤 n-1 次 在第 i (i=1,2,……,n-1)次的挑选步骤中,我们在数a(i), a(i+1) …… a(n)之中挑选最小的数 a(pos) 将 a(pos) 和 a(i) 交换 6.2.2 二维数组 1. 二维数组的说明 对于固定大小的二维数组,可以用如下格式进行定义: Dim 数组名([下界 To]上界,[下界 To]上界)[As 类型] 例如:Dim T(2,3)As Integer 定义了一个二维数组,名字为T,类型为Integer,该数组有3行(0~2),4列(0~3),占据12(3×4)个整型变量的空间,如图所示。 说明: 可以将二维数组的定义方法推广至多维数组的定义。 例如:Dim D(3,1 To 10,1 To 15) 定义了一个3维数组,大小为 4×10×15。注意在增加数组的维数时,数组所占的存储空间会大幅度增加,所以要慎用多维数组,尤其是Variant 数组,因为他们需要更大的存储空间。 2. 二维数组的引用 二维数组的引用和一维数组基本相同,格式为: 数组名(下标1,下标2) 对二维数组进行赋值或输出时,一般采用二重循环来实现。 3. 二维数组的应用举例 6.3 动态(可调)数组 通过前两节的学习,我们知道,定义数组,是用数值常数或符号常量定义数组的维数及下标的上、下界。VB编译程序在编译时为数组分配了相应的存储空间,并且在应用程序运行期间,数组一直占据这块内存区域,这样的数组称为固定大小的数组。 1. 动态数组的定义 动态数组的定义分为两步: 第一步: 声明一个没有下标参数的数组。 格式为: Dim 数组名()[As 类型] 第二步: 引用数组前用 ReDim语句重新定义。 格式为: ReDim [Preserve] 数组名([下界 To ] 上界[,[下界 To ] 上界……])[As 类型] 2. Erase语句 Erase语句的功能是重新初始化固定大小数组的元素,或者释放动态数组的存储空间。Erase语句的格式: Erase a1[, a2, …] 其中 a1、a2是用逗号隔开的需要重新初始化的或者释放存储空间的数组名。 ERASE 语句 6.4 控件数组 本节介绍控件数组,控件数组为我们处理功能相近的控件提供了极大的方便。 在实际应用中,我们有时会用到一些类型相同且功能类似的控件。如果对每一个控件都单独处理,就会多做一些麻烦而重复的工作。这时,我们可以用控件数组来简化程序。 控件数组由一组相同类型的控件组成,这些控件共用一个控件名字,具有相似的属性设置,共享同样的事件过程。控件数组中各个控件相当于普通数组中的各个元素,同一控件数组中各个控件的Index属性相当于普通数组中的下标。 控件数组的建立 6.5 程序示例 运行时添加控件数组 建立的步骤如下: 在窗体上画出某控件,设置该控件的Index值为0,表示该控件为数组,这是建立的第一个元素。 在编程时通过Load方法添加其余的若干个元素,也可以通过Unload方法删除某个添加的元素 每个新添加的控件数组通过Left和Top属性确定其在窗体的位置,并将Visible 属性设置为True。 控件数组应用示例一 编写一个算术运算器程序 [分析]各个数字按钮基本功能相同,故可采用控件数组进行设计。 程序示例 示例二 利用在运行时产生控件数组,构成一个国际象棋棋盘。当单击棋格,显示对应的序号。 程序示例 示例一:顺序查找 [分析]算法要点: 输入数组; 输入要查找数据; 利用循环依次顺序查找; 输出找到或找不到信息 程序示例 示例二:二分查找 二分查找示意 [算法分析] 输入已排好序的数组; 采用二分查找; 输出结果 程序示例 示例三:统计字母(不分大小写)在文本中出现的次数。 程序示例 示例四:圆盘找数。 如图找出4个连续数(紧挨着的4数),他们相加和最大。 程序示例 [算法分析] 生成有20个元素的数组; 求连续的四个元素之和,放入存放和数的新数组; 求新数组的最大元素及位置(序号); 按序号输
文档评论(0)