VB课件第六章.ppt_第1页
VB课件第六章.ppt_第2页
VB课件第六章.ppt_第3页
VB课件第六章.ppt_第4页
VB课件第六章.ppt_第5页
已阅读5页,还剩23页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

6 1数组的声明与使用 6 2数组应用 6 3控件数组 本章要求 返回目录 第六章数组 Array 本章要求 掌握数组的概念 理解排序的三种常用方法 掌握控件数组的应用方法 返回章首 下一页 第六章数组 6 1数组的声明与使用 6 1 1静态数组的声明静态数组是指在声明时已经确定了该数组中具有多少个元素 格式 Dim Private Public Static数组变量名 下标 As类型 说明 1 的命名规则同简单变量一样 2 决定了数组的维数和元素的个数 数组分为静态数组和动态数组 上一页 返回章首 下一页 例如 Dimcj 1to80 AsSingle 定义了单精度类型一维数组 上界为80 下界为1 共有80个元素 Publicstudentname 100 AsString 定义了字符类型一维数组 上界为100 下界为0 共有101个元素 Dimmark 1to10 10 定义了可变类型二维数组 一维下界为1 上界为10 二维下界为0 上界为10 共有10 11 110个元素 上一页 返回章首 下一页 二维数组LArray 3 4 的下标排列如下 一个声明语句可以同时定义几个数组 Dimmark 1to100 AsInteger LArray 3 4 AsLong一维数组mark的下标排列如下 上一页 返回章首 下一页 6 1 2数组的赋值及引用1 数组的赋值 可以用赋值语句 Inputbox函数或文本框给数组元素赋值 由于数组元素很多 一般都伴随着循环语句的使用 格式 OptionBase0 1 说明 该语句必须在窗体级或标准模块级使用 0或1表示下界 如 OptionBase1Dima 4 5 b 0to4 0to5 上一页 返回章首 下一页 2 数组的引用 引用数组时要指明数组名及下标 下标可以是常量 变量 或数值表达式 但要注意 引用下标的取值范围不能超过所定义数组的上 下界 否则将出现 下标越界 的错误信息 注意 在数组声明中的下标说明了数组的大小 而在程序其他过程中引用的数组下标表示数组中的一个元素 两者写法形式相同 但意义不同 上一页 返回章首 下一页 6 1 3与数组有关的函数 1 Lbound和Ubound函数Lbound Ubound 数组名 数组维序号 功能 Lbound函数返回数组某维的下界值 Ubound函数返回数组某维的上界值 其数据类型是long 数据维序号用1 2 3 表示 缺省取1 上一页 返回章首 下一页 2 Array函数 格式 Array 数据1 数据2 数据3 功能 将数据1 数据2 分别赋给一个可变类型的简单变量或动态数组中 用它可方便的给一维数组各元素赋值 但不能给二维以上的数组赋值 注意 1 用Array对数组各元素赋值 声明的数组必须是可变类型的简单变量或动态数组 2 数组的下界默认为0 除非用OptionBase语句说明 上界由Array函数括号内的数据的个数决定 也可以通过函数Ubound获得 上一页 返回章首 下一页 3 IsArray函数 格式 IsArray 变量名 功能 测试变量名是否为一个数组 若是数组 函数值为True 否则为False 例6 1 Array和IsArray两函数的使用 上一页 返回章首 下一页 6 1 4动态数组与数组重定义 1 动态数组的声明动态数组是指在声明时未给出数组的大小 既不指明上界 又不指明下界的数组 当要使用它时 随时用ReDim语句重新指出数组大小 格式 Dim Private Public Static数组变量名 As类型 说明 动态数组的声明除了大小和维数为空外 其他格式与静态数组一样 上一页 返回章首 下一页 格式 ReDim Preserve 数组变量名 下标 As类型 功能 用于为动态数组重新分配存储空间 说明 1 可以对同一个动态数组多次使用ReDim重新定义其大小 2 Preserve可选项只能用在改变最后一维的上界时 保留数组中原来的数据 否则原数据丢失 可以使用常量 变量或表达式 3 不能对已定义的固定数组重新定义 4 ReDim语句只能在过程中使用 不能用在窗体和模块级 5 ReDim不能改变动态数组的数据类型 2 数组重声明 上一页 返回章首 下一页 3 数组元素的初始化一旦声明了数组 系统自动对每个元素的值进行初始化 即默认初值 数组元素的初值取决于数据类型 格式 Erase数组名1 数组名2 数组名3 说明 对指定的固定大小的数组进行初始化 对指定的动态数组释放所占的内存空间 在下次引用该动态数组之前 必须用ReDim语句重新定义 上一页 返回章首 下一页 例6 2 在VB6 0中 提供了数组对数组直接赋值 但在使用时应注意 被赋值的数组必须声明为Variant类型的动态数组 否则会出错 例6 3 求Fibonacci数列 1 1 2 3 5 8 13 21 该数列满足下列规律 F1 1 F2 1 FN FN 1 FN 2要求输入项数 在窗体上输出数列的各项 并要求每行输出4个数 上一页 返回章首 下一页 6 1 5ForEach Next语句 格式 ForEach循环变量In数组名循环体 Exitfor Next循环变量 上一页 返回章首 下一页 6 2数组应用 6 2 1排序 1 比较交换排序法 上一页 返回章首 下一页 2 选择交换排序法 上一页 返回章首 下一页 6 3控件数组 控件数组是由一组相同名称 相同类型的控件组成 这些控件的大多数属性相同 并接受同一事件 控件数组元素都有一个唯一的索引号Index与其对应 假如一个控件数组有5个元素 则index值为0 4 程序根据index值判断用户给哪个控件元素施加了 事件 进而决定程序的进程 上一页 返回章首 下一页 6 3 1创建控件数组1 在创建界面时建立控件数组方法一 在窗体上先从工具箱中添加一个控件然后用 复制 粘贴 命令 方法二 将窗体上多个相同控件的Name属性值设置为相同 上一页 返回章首 下一页 2 用命令添加 删除控件数组的元素 格式 load控件数组 index Unload控件数组 index 说明 1 每个添加的元素必须通过left和top属性确定其位置 Visible True 2 load只能添加已有控件数组的元素 不能创建控件数组 3 Unload只能删除用load添加的元素 不能删除设计时创建的元素 上一页 返回章首 下一页 6 3 2控件数组应用举例 例6 8 设计一个简易计算器 要求能够进行整数的加 减 乘 除运算 并能将十进制转换为二进制 八进制 十六进制 还能进行开平方运算 例6 9 用load添加控件数组元素的应用 上一页 返回章首 下一页 选择题 1 Dimsum 10 asinteger声明了有 个元素的数组9B 10C 11D 122 Dimarrb 3to5 2to2 所定义的数组的元素个数是 20B 12C 15D 24 上一页 返回章首 下一页 3 OptionBase1PrivateSubForm Click Dima 4 3 AsIntegerPrintUbound a 2 EndSub显示的结果是 A 2B 3C 4D 5 上一页 返回章首 下一页 4 关于Redim语句 说法正确的是 Redim语句可以在过程外出现Redim语句可以对已定义的固定数组重声明可以对同一个动态数组多次使用Redim重新定义其大小一般情况下 Redim语句可以改变动态数组的数据类型 上一页 返回章首 下一页 5 OptionBase1Dima 0to5 AsInteger b 10 AsInteger不会出现下标越界的是 A Printa 0 B Printa 6 C Printb 0 D Printb 11 上一页 返回章首 下一页 6 OptionBase1PrivateSubForm Click Dima bA Array 10 20 30 b a 2 EndSubb的值为 A 10B 20C 30D 31 上一页 返回章首 下一页 7 区分控件数组中不同元素的属性是 NameB IndexC CaptionD Height8 关于Unload语句 说法不正确的是 Unload可以将窗体从内存中卸载Unload可以删除用Load添加的控件

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论