数组和自定义类型

上传人:wuxin****2020 文档编号:248072320 上传时间:2024-10-22 格式:PPT 页数:23 大小:266.32KB
返回 下载 相关 举报
数组和自定义类型_第1页
第1页 / 共23页
数组和自定义类型_第2页
第2页 / 共23页
数组和自定义类型_第3页
第3页 / 共23页
点击查看更多>>
资源描述
单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,*,第5章 数组和自定义类型,数组的概念,引例:计算一个班级100个学生的平均成绩,然后计算高于平均分的人数。,计算平均:求和、计数、总和/人数。,计算高于平均人数?,数组的基本概念,一组相同类型变量的集合,注意:数组必须先声明后使用,下标和维数,数组大小,定义数组及声明,一维数组,Dim 数组名(下标)As 类型,下标必须为常量,下标形式:下界 To 上界,省略下界为0。,一维数组大小:上界-下界+1,As类型:,例如:Dim a(10)as Integer Dim St(-3 To 5)as String*3,定义数组及声明,一维数组是一个线性表,2维数组是一个平面矩阵,3维数组是一个立体矩阵,多维数组定义语法格式:,Dim 数组名(下标1,下标2,)As 类型,下标个数:决定数组维数,数组大小:每一维的大小=上界-下界+1;数组大小为各维大小的乘积。,例如:,Dim a(5)as integer,Dim b(-2 To 3,3)as Integer,Dim c(2,5,3)as integer,动态数组及声明,建立动态数组的步骤:,用dim语句声明数组,但不定其大小:Dim 数组名()As 数据类型,用ReDim语句动态地分配元素个数,语句形式:ReDim数组名(下标1,下标2,)As 类型,例如:Dim A()as integer ReDim A(4,8),ReDim中的下标可以使用变量,ReDim保留字可以加Preserve参数保留数据,但只能改变最后一维的大小。,例5.2 按每行5个数显示有n个数的非波那契数列。,数组基本操作,数组元素的引用,数组名(下标1,下标2),数组的赋值Array函数,变量名=Array(常量列表),数组的输入,通过循环利用InputBox,数组的输出,通过循环利用Print语句输出,换行方法,例5.3 生成55的方阵,数组基本操作,数组求和、求最小、位置及变换数组元素,例5.4 求一维数组中各元素之和、最小数组元素,并将最小数组元素与数组第一个元素交换,数组元素求和:累加器,求最小元素及下标:最小值擂台变量、最小下标擂台变量,元素交换:与普通变量交换相同,数组基本操作,数组排序,选择排序,基本思想:选择为排序元素中最小元素的位置,然后将最小元素与第一个元素交换。,举例:8,6,9,3,,2,,7,2,,6,9,,3,,8,7,2,3,,9,,6,,8,7,2,3,6,,,9,8,,7,2,3,6,7,,8,9,2,3,6,7,8,,9,数组基本操作,数组排序,冒泡排序,基本思想:一次冒泡过程将最大元素沉到最底下(即下标最大位置),在冒泡过程中从头开始,相邻元素比较,如果a(i)a(i+1),交换值。,举例:,8,6,9,3,2,7 6,8,3,2,7,,,9,6,3,2,7,,8,9,3,2,6,,7,,8,9,2,3,,6,7,,8,9,数组基本操作,插入数据,插入数据后依然保持次序,假设数组元素是从小到大排序,1.输入一个要插入的数值x。,2.查找第一个大于x的元素下标k。,3.调整数组长度+1,3.将下标kn元素后移一位,腾出空位,4.填写数值:x,a(k),例5.7 要在有序数组a中插入数值x后仍有序。,数组基本操作,删除数据,删除元素后,仍然保持有序算法步骤:,1.输入要删除的数值,2.查找要删除元素的位置k,3.将下标从k+1n的元素前移一个位置。,4.调整数组长度-1。,例5.8 要从数组a中将于x变量(假定值为13)值相同的数组元素删除。,5.3 列表框和组合框控件,列表框,组合框,列表框和组合框应用,列表框,用于显示多个项目的列表,主要属性,List,ListIndex,ListCount,Sorted,Text,Selected,MultiSelect,主要方法,AddItem 项目字符串,索引值,RemoveItem 索引值,Clear,主要事件:Click、DblClick,例5.9,组合框,是一种兼有文本框和列表框两者功能特性而形成的控件。,组合框的属性、方法和事件与列表框基本相同,与列表框属性不同的有:,Style:组合框样式,组合框在任何时候最多只能选取一个项目,例5.10 编写一个使用屏幕字体、字号的程序。,列表框和组合框应用,例5.11 根据例5.7对有序数组插入、删除数据后仍保持有序,例5.12 输入和修改省、直辖市名称。,5.4 自定义类型及其数组,自定义类型的定义,自定义类型变量的声明和使用,自定义类型数组及其应用,自定义类型的定义,也称记录类型,一个类型中包含多个字段内容,定义形式:,Type 自定义类型名,元素名1 As 数据类型名,元素名2 As 数据类型名,End Type,举例:,Type studType,Name As String*5,Sex As string*1,Telephone As long,Schoo As String*10,End Type,自定义类型变量的声明和使用,自定义类型变量的声明,Dim 自定义类型变量名 As 自定义类型名,举例:Dim Student As StudType,自定义类型变量元素的引用,自定义类型变量.元素名,举例:Student.Sex=“男”,自定义类型变量的声明和使用,With语句的使用,With语句形式如下:,With 变量名,语句块,End With,举例:,With Student,.Name=“”,.Sex=“”,End With,自定义类型数组及其应用,自定义类型数组就是数组中的每元素是自定义类型。,例5.13 完成以下功能:,输入人员信息,显示人员信息,查找人员信息,5.5 综合应用,数组的分类:定长数组、动态数组、自定义数组。,数组声明:数组名、类型、维数、大小,循环和数组的结合使用,可简化编程的工作量,但必须将数组下标与循环变量结合使用,1.分类统计,分类统计是按分类条件统计一批数据中每一类包含的个数,例5.4,输入一串字符,统计个字母(不区分大小写)出现的次数。,分析:,为26个字母设置一个数组作为计数器。,逐个判断每个字母,并根据字母值,对相应的计数器+1。,2.大量数据的输入和编辑,InputBox函数只适合于输入少量数据。输入大量数据需要使用文本框(多行)。,例5.5 在文本框内输入一系列数据,对输入的数据允许修改和自动识别非数字数据,输入结束后调用Split函数将数据按约定的分割符分割,并将分割的结果存入数组中,然后在列表中显示,在用join函数将分割后的数据重新合并,在Text2文本框中显示,处理:过滤非法字符,过滤重复分割符,
展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 图纸专区 > 课件教案


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!