程序设计基础——Visual Basic教程 第2版 工业和信息化普通高等教育“十二五”规划教材立项项目 教学课件 ppt 作者 周黎 钱瑛 周阳花 第7章 高级数据类型

上传人:E**** 文档编号:89364311 上传时间:2019-05-24 格式:PPT 页数:120 大小:1.53MB
返回 下载 相关 举报
程序设计基础——Visual Basic教程 第2版  工业和信息化普通高等教育“十二五”规划教材立项项目  教学课件 ppt 作者  周黎 钱瑛 周阳花 第7章 高级数据类型_第1页
第1页 / 共120页
程序设计基础——Visual Basic教程 第2版  工业和信息化普通高等教育“十二五”规划教材立项项目  教学课件 ppt 作者  周黎 钱瑛 周阳花 第7章 高级数据类型_第2页
第2页 / 共120页
程序设计基础——Visual Basic教程 第2版  工业和信息化普通高等教育“十二五”规划教材立项项目  教学课件 ppt 作者  周黎 钱瑛 周阳花 第7章 高级数据类型_第3页
第3页 / 共120页
程序设计基础——Visual Basic教程 第2版  工业和信息化普通高等教育“十二五”规划教材立项项目  教学课件 ppt 作者  周黎 钱瑛 周阳花 第7章 高级数据类型_第4页
第4页 / 共120页
程序设计基础——Visual Basic教程 第2版  工业和信息化普通高等教育“十二五”规划教材立项项目  教学课件 ppt 作者  周黎 钱瑛 周阳花 第7章 高级数据类型_第5页
第5页 / 共120页
点击查看更多>>
资源描述

《程序设计基础——Visual Basic教程 第2版 工业和信息化普通高等教育“十二五”规划教材立项项目 教学课件 ppt 作者 周黎 钱瑛 周阳花 第7章 高级数据类型》由会员分享,可在线阅读,更多相关《程序设计基础——Visual Basic教程 第2版 工业和信息化普通高等教育“十二五”规划教材立项项目 教学课件 ppt 作者 周黎 钱瑛 周阳花 第7章 高级数据类型(120页珍藏版)》请在金锄头文库上搜索。

1、第7章 高级数据类型,本章重点:,理解数组的基本概念,了解默认数组。 理解数组的声明(动态数组和定长数组)。 理解数组的基本操作(输入、输出、查找、排序、增加、删除等)。 掌握For Each Next语句的用法。 清楚控件数组的概念,掌握控件数组的建立和使用方法。 掌握枚举、用户自定义等高级数据类型的定义和使用。,引入数组(1),单一的变量对于作为整体存在的数据的表达能力不足,并且整体中的个体的变化规律无法表达 班级中每个人的名字无法确切记忆 解决:用班级名称代表整体,用班级内学号代表整体中的个体 如:生工3班(3) 用一个名字代表同类个体集合 集合中个体的表示:集合名(集合内的代号),引入

2、数组(2),S=1+2+3+30 For i = 1 To 30 s = s + i Next i S=a1+a2+a3+a30 找出一组数中的最大/小元素,则: For i =1 To 30 s = s + ai Next i,a1 a2 a30,a1 a2 a30,a(1) a(2) a(30),则: For i =1 To 30 s = s + a(i) Next i,7.1.1 数组的基本概念,数组相同类型数据的集合 数组名集合的名称 数组元素集合内的每一个成员 下标数组元素在数组中的编号, 代表了该元素在数组中的位置 某个数组元素表示为:数组名(下标),7.1.1数组的基本概念(续)

3、,数组一组相同类型的变量 使用同一个(有意义)名字来组织 一个班(30个)学生的成绩 Score 3000种图书的名字 BookName 100种商品的价格 Cost 数组元素数组中的各个变量 使用唯一的下标(索引)来标识 如:Score(1)、 Score(2)Score(30) BookName(0) BookName(2999) Cost(0) Cost(99) 数组的长度数组元素的个数,7.1.1数组的基本概念(续),数组的维数 一维数组 多维数组 二维数组 三维数组 ,(2,5,7,9,10,4,8),行,行列,行列层,(25791048),列,7.1.1数组的基本概念(续),数组的

4、分类 按维数分: 一维、二维、三维 数组的最大维数达60,而元素的多少受内存的制约 按在内存分配是否可变分: 定长(固定大小)数组(数组的维数和长度一旦定义,不能改变) 动态数组(可动态重新定义数组的维数和长度),7.1.2 定长数组的声明,使用数组的步骤: 定义声明数组,规定其总体格局 使用时只能对数组的各个元素进行操作(一般不能对数组整体进行操作),从而实现对数组的访问,7.1.2 定长数组的声明,定长数组定义时需要规定的内容: 数组的名字 数组的维数 数组的每个维的下标的范围 数组存放数据的数据类型,7.1.2 定长数组的声明,1.一维数组 Dim 数组名(下标) As 类型名 Priv

5、ate 数组名(下标) As 类型名 Public 数组名(下标) As 类型名 如: Dim Score(1 to 30) As Integer Private BookName(3000) As String Public Cost(100) As Single,Dim 数组名(下标) As 类型名,其中: 下标的格式为:下界 to 上界 若省略下界,则下界默认为0 如:Dim Score(1 to 30) As Integer 数组元素: Score(1)、 Score(2)Score(30) Dim Cost(100) As Single 数组元素: Cost(0)、 Cost(1)

6、Cost(100) 声明格式中下标只能由常数/符号常量或它们组成的表达式表示(不能是变量),并将常数转换为整型数表示数组的长度; As 类型名若省略,则默认为变体数组。,Const n as integer = 15 Dim a(n) as integer , b(2*3) as integer Dim c(3.6) as integer 将3.6四舍六入取整,Dim x as integer x=15 Dim d(x) as integer,错误,x是变量,7.1.2 定长数组的声明,2.多维数组 Dim 数组名(下标1,下标2)As 类型名 如: 二维数组: Dim db (3,1 to

7、5) As Integer Public N(5,5) As Single 三维数组:Dim Tr(3,4,4) As Long Dim A(1 to 5,1 to 5,1 to 5) As Long 元素: 数组db共有4行5列 4520个元素,常量、数组、固定长度字符类型作用范围规定表,7.1.2 定长数组的声明,2.多维数组 数组的大小(元素的个数): = 第一维大小 * 第二维大小 * 维的大小 = 维上界 - 维下界 + 1 Dim a(3, -1 to 4) as single a数组的大小 = (3-0+1)*(4-(-1)+1) = 4*6 =24 Dim b(3.8, -1

8、to 4 ,6) as integer b数组的大小 = 5*6*7 = 210,7.1.2 定长数组的声明,数组正确定义后: 系统分配连续的内存空间,空间名称为数组名 数组中各个元素获得初始值 数值型为0 逻辑型为False 字符串型为“ 变体型为Empty 演示,7.1.2 定长数组的声明,内存中存放数组按“线性连续存储”的方式 一维数组在内存中的存放: 二维数组在内存中的存放: 以列为单位存放!,7.1.3 定长数组的基本操作,数组的输入 数组的输出,7.1.3 数组的基本操作,数组元素的变化都表现在其下标的变化 利用下标访问数组元素 1 数组的输入 法0. 使用赋值语句,单个数组元素赋

9、值 Dim a(5) As Integer, b(3,4) As Integer, i As Integer i=3 a(0)=5 : a(1)=6*i : a(2)=8 b(0,0)=5 : b(0,1)=6+i * a(2) a(3)=b(0,0) : b(1,1)= a(2) ,7.1.3 数组的基本操作,一般采用循环结构给数组元素批量赋值 法1.键盘读入 使用InputBox()函数实现,静态数组 Dim A(1 To 5) As Integer, i As Integer For i = 1 To 5 A(i) = InputBox(“请输入第” & i & “个数据”) Next

10、i,7.1.3 数组的基本操作,法2.下标生成 适用于数组元素值与下标之间存在函数关系,Dim A(1 To 5) As Integer, k As Integer For k = 1 To 5 A(k) = 2 * k - 1 Next k A(1)=1 A(2)=3 A(3)=5 A(5)=9,7.1.3 数组的基本操作,注:Dim a(10) As Integer,b(10) as Integer a数组中已经赋好值 b = a,错误,数组之间一般不能整体赋值 正确方法 For i =1 to 10 b(i) = a(i) 数组元素之间进行赋值 Next i,7.1.3 数组的基本操作,

11、法4.Array函数 对数组整体赋值 步骤定义一个Variant的变量 如: Dim m 或者 Dim m As Variant 步骤使用Array函数赋值: 变体变量=Array(数据列表) 如:mArray(1,3,5,7,9) 注意:下标从0开始,系统根据Array函数的参数个数决定数组的大小 ,此后,可把m当作一个数组来使用 即m(0)=1、m(1)=3、m(2)=5、m(3)=7、m(4)=9,7.1.3 数组的基本操作,法4.Array函数 对数组整体赋值,Dim v, k As Variant v = Array(11, 22, 33, 44, 55) v(0)=1 v(5) =

12、5 k=v v=15.3,正确v现在是数组,只能对每个元素进行赋值 可通过循环批量进行赋值 错误,下标越界 将v数组整体赋值给变体变量k, k现在可看成数组 正确v由数组变成了一个单个变量,7.1.3 数组的基本操作,将数组的各个元素输出 1.一维数组 For i = 1 To 10 Print A(i) , 在一行上显示(也可用;) Next I For i = 1 To 100 Print B(i) , If i Mod 10 = 0 Then Print 每10个一行显示 Next i,7.1.3 数组的基本操作,2二维数组二重循环 Dim C(1 To 10, 1 To 4) As I

13、nteger For i = 1 To 10 控制行 For j = 1 To 5 控制列 C(i,j) = Int(Rnd*100)+1 Print C(i,j), 由于最后是逗号,输出一个 数组元素后并不换行,保证同行元素在同行 Next j Print 每输出完一行,进行换行 Next i,7.1.3 数组的基本操作(续),用于输出的对象 窗体 Print方法 Print a(i), 显示元素 Print a(i); 显示元素 Print 换行 Cls 清除所有显示内容 PictureBox Print方法 Picture1.Print a(i), 显示元素 Picture1.Print

14、 换行 Picture1.Cls 清除所有显示内容 文本框 Text属性 Text1.Text=Text1 .Text & a(i) 显示元素 Text1 .Text =Text1 .Text & chr(13) & chr(10) 换行 Text1 .Text =“” 清除所有显示内容,前提:文本框的MultiLine属性设置为True, 即为多行文本框,定长数组的应用1,例7-1 随机生成一个3行5列的矩阵,并分别在图片框和文本框中输出,Private Sub Command1_Click() Dim a(1 To 3, 1 To 5) As Integer Dim i As Intege

15、r, j As Integer For i = 1 To 3 For j = 1 To 5 a(i, j) = Int(90 * Rnd + 10) Next j Next i Picture1.Cls Picture1.Print “生成的数组为:” Text1.Text = “生成的数组为:“ Text1.Text = Text1.Text & a(i, j) & Space(3) Next j Picture1.Print Text1.Text = Text1.Text & VbCrLf Next i End Sub,定长数组的应用2,例7-2求任意5阶方阵主副对角线上元素之和 分析:主对角线上元素的数组下标的规律是行下标与列下标相同,即矩阵第i行第i列位置上的数据就是主对角线上元素;而副对角线上的元素其数组下标的规律是:行下标 + 列下标 1 = 矩阵阶数,Private Sub Cmd

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 高等教育 > 大学课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号