第18讲习题课 VB课件new.ppt

  1. 1、本文档共15页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第18讲习题课 VB课件new

数组习题讲解 三、For Each…Next 语句 For Each…Next 语句类似与For …Next 语句,但前者专门针对一个数组或集合中的每个元素执行重复语句。一般格式为: * * 一、数组的基本操作 1. 可通过循环给数组元素的初值 For i = 1 To 10 A数组的每个元素值为1 A(i)=1 Next i 2. 数组的输入 For i = 1 To 4 For j = 1 To 5 sc(i, j) = InputBox(输入sc的值) Next j Next I 3. 数组的输出 输出如下图所示的下三角数据 Dim sc(5,5) As Integer,i%,j% For i = 1 To 5 For j = 1 To i sc(i, j) = i * 5 + j Print sc(i, j); ; Next j Print 换行 Next I 二、 求数组中最大元素 Dim Max As Integer Max=A(1) For i = 2 To 10 If A(i)Max Then Max=A(i) End If Next I For Each 成员 In 数组 循环语句序列 [Exit For] 循环语句序列 Next 成员 For i=1 to 5 循环语句序列 [Exit For] 循环语句序列 Next i For Each …Next语句主要用来对数组元素进行处理,包括查询、显示或读取。它执行的次数由数组元素的个数决定。如: Dim a(1 to 5) For Each x In a print x, Next 四、 排序问题 排序就是将一组数按递增或递减的次序重新排列。 排序的方法:选择法、冒泡法、插入法和合并排序。 1、选择法排序 算法描述(以递减为例): 1、将n个数放在数组a(1),a(2),…a(n)。 2、从n个数中选出存放最大数的数组元素,然后将存放最大数的数组 元素中的数据与第一个数组元素的数据交换, 这为第一轮。 具体操作: 从n个数中选出存放最大数的数组元素的下标,放在变量k中,然后a(k) 与a(1)交换数据。 3、继续进行第二轮、第三轮、..、直到第n-1轮的操作。 程序实现:将数组中的6个数,用选择法递减顺序排列。 Dim a(6) As Integer Dim k, n, i, j, t As Integer Randomize n = 6 给数组6个元素赋值,0~9中的随机整数 For i = 1 To n a(i) = Int(Rnd * 9) + 1 Label2.Caption = Label2.Caption + Str(a(i)) Next 选择排序法 For i = 1 To n - 1 k = i For j = i + 1 To n If a(j) a(k) Then k = j Next t = a(k): a(k) = a(i): a(i) = t Next I for i=1 to n Label4.Caption = Label4.Caption + Str(a(i)) Next i 2.冒泡法排序 以递增为例: 算法思想:(将相邻两个数比较,小的调到前头) 1)将n个数存放在数组a(n)中, 2)第一轮将每相邻两个数比较,小的调到前头,经n-1次两两相邻比较后,最大的数已“沉底”,放在最后一个位置

文档评论(0)

qiwqpu54 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档