资源描述:
《第5部分 数据结构-完成版》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、主讲人:邵利平博士电子邮件:slpmaster@163.com单位:计算机科学学院5数据结构http://ccs.snnu.edu.cn5.15.15.1数据结构概述数据结构概述数据结构概述5.25.25.2结构体结构体结构体5.35.35.3数组数组数组5.45.45.4集合集合集合5.55.55.5枚举类型枚举类型枚举类型slpmaster@163.com5.15.1数据结构概述数据结构概述(1)(1)http://ccs.snnu.edu.cn所谓数据结构是数据的描述和组织形式,它主要包括:1
2、.数据在计算机中的存储;2.对数据的操作;3.数据之间的逻辑关系.同本书第2部分基本数据类型不同,本章所介绍的数据结构主要是复合数据类型.slpmaster@163.com5数据结构http://ccs.snnu.edu.cn5.15.15.1数据结构概述数据结构概述数据结构概述5.25.25.2结构体结构体结构体5.35.35.3数组数组数组5.45.45.4集合集合集合5.55.55.5枚举类型枚举类型枚举类型slpmaster@163.com5.25.2结构体结构体(1)(1)http://c
3、cs.snnu.edu.cn结构体是VB2005支持的用户自定义(UDT)之一,包含1个或多个关联元素,这些元素可以是基本数据类型也可是其他结构类型.定义结构的基本语句格式是:Public
4、PrivateStructureStuctName成员变量声明EndStructure其中,Structure和EndStructure是关键字,表明结构体的开始和结束,StructName是结构体的名字,成员变量声明和Dim声明变量的方式一致.slpmaster@163.com5.25.2结构体结构体(2)(2
5、)http://ccs.snnu.edu.cn例如:声明1个结构体用于存储学生信息一般情况下,不允许对结构体成员变量赋初值slpmaster@163.com5.25.2结构体结构体(3)(3)http://ccs.snnu.edu.cn访问结构体变量的方式为:1.定义结构体2.声明结构体变量Dimstu_studentasStudent3.通过结构体变量名.成员变量进行访问slpmaster@163.com5.25.2结构体结构体(4)(4)http://ccs.snnu.edu.cn结构体定义的位
6、置可以出现以下位置:1.可定义在外部;2.可定义在类级;Student1定义在外部Student2定义在类内slpmaster@163.com5.25.2结构体结构体(5)(5)http://ccs.snnu.edu.cn书上的137页例子所说明的内容:1.如何定义结构体;2.声明一个变量为特定的结构体类型;3.通过结构体变量对成员变量赋值和访问成员变量.slpmaster@163.com5.25.2结构体结构体(5)(5)http://ccs.snnu.edu.cnslpmaster@163.co
7、m5数据结构http://ccs.snnu.edu.cn5.15.15.1数据结构概述数据结构概述数据结构概述5.25.25.2结构体结构体结构体5.35.35.3数组数组数组5.45.45.4集合集合集合5.55.55.5枚举类型枚举类型枚举类型slpmaster@163.com5.3数组(1)http://ccs.snnu.edu.cn数组是在程序设计中,把具有相同类型的若干变量按有序的形式组织起来的一种复合数据类型。声明1维数组的基本语句格式为:DimArrayName(MaxIndex)As
8、DataType其中,ArrayName是数组名,MaxIndex是数组的索引上限,即数组中所包含的元素最大下标,数组元素的最小下标从0开始,数组总共有MaxIndex+1个元素,且每个元素都是存储DataType数据类型的数据,DataType可以是基本数据类型也可以是复合数据类型,例如结构体.一般可通过ArrayName(Index)访问数组中的元素,Index属于0到MaxIndex之间.由于只存在1个索引slpmaster@163.com值因此是1维数组.5.3数组(2)http://ccs
9、.snnu.edu.cn1维数组在定义时可赋初值,敷初值时不允许指定索引上界,例如:错误的声明正确的声明slpmaster@163.com5.3数组(3)http://ccs.snnu.edu.cn对于数组,一般通过数组的成员函数Length()返回数组的长度,通过具体数组名字加上对应的索引号访问某个数组元素,可通过For…Next语句实现对数组元素的遍历.请思考计算字符串的长度如何计算,这里能用len()?注意起始索引从0开始,到数组的最大长度-1slpmaster