viusal basic数组

之前的没保存丢失了哭了
冒泡排序
直观上是值较小的数字,“浮到”作为继续排序的一组数据的顶部。
操作就是: 从第一项开始,每一项i与下一项i+1比较,如果下一项教小,我们就换位置,把这句话翻译
每次最小的数浮动顶部,那么每次最大排序减少一位,

i 是数组长度
for j% = 1 To i%-1
   number(j%)>number(j%+1) Then
   t = number(j%+1)
   number(j%+1) = number(j%)
   number(j%) = t

测试一下
分析321
我们第一次比较两次,213
第二次比较一次 123

Private Sub Command1_Click()
Static number(1 To 3) As Integer
number(1) = 3
number(2) = 2
number(3) = 1
I% = 3
For I% = 3 To 1 Step -1
For j% = 1 To I% - 1
  If number(j%) > number(j% + 1) Then
    t = number(j% + 1)
    number(j% + 1) = number(j%)
    number(j%) = t
  End If
Next j%
Next I%
For I = 1 To 3
  Print number(I%)
Next I


在这里插入图片描述
于是我们可以

Private Sub Command1_Click()
Static number(1 To 10) As Integer
msg$ = "Enter number for sort"
msgtitle$ = "Sort Demo"
For i% = 1 To 10
  number(i%) = InputBox(msg$, msgtitle$)
Next i%
For i% = 10 To 2 Step -1
For j% = 1 To i% - 1
  If number(j%) > number(j% + 1) Then
    t = number(j% + 1)
    number(j% + 1) = number(j%)
    number(j%) = t
  End If
Next j%
Next i%
For i = 1 To 10
  Print number(i%)
Next i
End Sub

For each …NExt 使用例子
For each … next 专门用于对象或者集合 可以代表任何类型的数组元素
for each x in MyArray
print x
Next x
For each 与 for next 语句类似,两者都用来指定执行重复次数的一组操作
成员是一个变体变量,
数组中有多少各元素就执行多少次
例子:
输出随机数组中,》50 的元素, 遇到95则停止

Dim arr(1 to 20)
Private Sub Form_Click()
 For i=1 To 20
   arr(i) = int(Rnd*100)
Next i
For Each Arr_elem In arr
 if Arr_elem > 50 then
   Print Arr_elem
   Sum = Sum + Arr_elem
End if
if Arr_elem  > 95 then Exit For
Next arr_elem
Print sum
End Sub

数组的初始化

初始化:就是给数组的元素赋予一个初始值,
目前我们有两种方法 一个是 赋值语句,另一个是 InputBox函数
占用运行时间
Array函数 是一种更加高效的方法,目的是把一个数据集读入某个数组
数组变量名 = Array(数组元素值)
数组变量名 是预先定义的数组名,没有括号
数组变量必须是Variant类型
数组变量的三定义方法

  1. 显示定义成 Varant
  2. 定义时不指明类型
  3. 不定义直接使用

控件数组

例子
在窗体上建立一个命令按钮
Private Sub Co_Click()
Static MaxIdx
If MaxIdx = 0 Then MaxIdx = 1
MaxIdx = MaxIdx + 1
If MaxIdx > 7 Then Exit Sub
Load Optbutton(MaxIdx)
Optbutton(MaxIdx).Top = Optbutton(MaxIdx - 1).Top + 360
Optbutton(MaxIdx).Visible = True
End Sub

Private Sub Command1_Click()

End Sub

Private Sub Option1_Click()

End Sub

Private Sub Optbutton_Click(Index As Integer)
Dim H, W
Picture1.Cls
Picture1.FillStyle = Index
W = Picture1.ScaleWidth / 2
H = Picture1.ScaleHeight / 2
Picture1.Circle (W, H), W / 2
End Sub
在这里插入图片描述

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值