冒泡排序法 vb

对输入的整数(6,3,7,8,2,1)用冒泡排序法按递增顺序排序

Option Base 1

Private Sub Command1_Click()

Dim a

Dim b As Integer

Dim i As Integer

Dim j As Integer

a = Array(6, 3, 7, 8, 2, 1)

Print "排序前为";

For i = 1 To 6

Print a(i);

Next i

For i = 1 To 5

  For j = 1 To 6 - i

     If a(j) > a(j + 1) Then

      b = a(j + 1)

      a(j + 1) = a(j)

      a(j) = b

      End If

    Next j

 Next i

 Print

 Print "排序后为";

 For i = 1 To 6

   Print a(i);

 Next i

End Sub

温馨提示:内容为网友见解,仅供参考
第1个回答  推荐于2018-02-22
冒泡法排序(升序)
基本思想:(将相邻两个数比较,小的调到前头)
1)有n个数(存放在数组a(n)中),第一趟将每相邻两个数比较,小的调到前头,经n-1次两两相邻比较后,最大的数已“沉底”,放在最后一个位置,小数上升“浮起”;
2)第二趟对余下的n-1个数(最大的数已“沉底”)按上法比较,经n-2次两两相邻比较后得次大的数;
3)依次类推,n个数共进行n-1趟比较,在第j趟中要进行n-j次两两比较。
程序段如下
For i = 1 To n - 1
For j = 1 To n-i
If a(j) > a(j+1) Then
temp=a(j): a(j)=a(j+1): a(j+1)=temp
End if
Next j
Next i本回答被网友采纳
第2个回答  2009-04-10
Dim A, i As Integer, j As Integer, m As Integer
A = Array(6, 3, 7, 8, 2, 1)
For i = LBound(A) To UBound(A) - 1
For j = i + 1 To UBound(A)
If A(i) > A(j) Then
m = A(i): A(i) = A(j): A(j) = m
End If
Next j
Next i
For i = LBound(A) To UBound(A)
Print A(i);
Next i

在VB编程中求最大和最小数
在VB编程中,求解最大和最小数的问题可以通过多种算法解决,其中冒泡排序法是其中一种。下面,我们就通过冒泡排序法来实现这个问题。首先,我们需要一个数组来存储这些数。例如,我们有五个数:X[1] = 2, X[2] = 5, X[3] = 1, X[4] = 4, X[5] = 3。我们将这些数赋给数组。然后,...

VB冒泡排序 怎么比较的? 具体跟我写下
冒泡排序,顾名思义:以顺序排列为例,把最大的数 放到最后面,这个过程就好像:最大的数字 从底下往上冒的过程一样~而且是一层层的冒上来的。12 34 6 54 60 比较12和34, 12比34小,不交换位置 12 34 6 54 60 比较34和6, 34比6大,交换位置 12 6 34 54 60 比较34和54,...

能详细的告诉我 VB 里冒泡排序法么?最好要有个详细的举例。
冒泡排序法的过程为:对于数组的n个元素,从第1个起,每个与其下一个作比较,如果下一个的值小,就交换着两项的值。直到倒数第2个与最后一个比较完之后,数组中的最大数(或最小数)就被放到了最后一个位置(或第一个位置),然后对浮上来(或者浮下去)的这一部分进行同样的操作,直到浮上来(...

VB编程怎么排序
冒泡排序法思路:(假设有10个数,需要从小到大排)Dim a(10)Randomize For i = 1 To 10 a(i) = Int(Rnd * i + 3 + Rnd * 10) '给数组赋值 Print a(i);Next i Print For i = 1 To 10 ‘For j = i + 1 To 10 If a(j) < a(i) Then ’如果剩余的比a(i)小...

VB冒泡排序法和选择排序法的优缺点比较
选择排序,则在比较过程中(内循环里面)并不进行对调,而是先记录下最小(大)数的下标,在一次扫描完成后再进行对调。所以它的效率会比冒泡的高一点。但是冒泡排序是“稳定的”排序。就是说同样总分的若干名同学,排序前在前面的,排序后这些同学的相互位置不会发生改变。而选择排序则是“不稳定的”...

vb 冒泡排序,快救救我吧。我都混乱死了。到底计算机每一步怎么算出来...
计算机冒泡排序法是用两层循环,外循环i=1到5,内循环j=6到i。排序的思路是先把六个中最大的排到第一个,然后把剩下五个中最大的排到第二位,再把剩下四个中最大的排到第三位,以此类推 执行过程如下 第一次外循环,i=1,进入内循环,从第六到第一每次取两个数出来比较,如果大小顺序不...

vb冒泡法是怎么回事
冒泡法排序(递增)算法思想:(将相邻两个数比较,大的调到后头)1)有n+1个数(存放在数组a(n)中),第一趟将每相邻两个数比较,大的调到后头,经n次两两相邻比较后,最大的数已“沉底”,放在最后一个位置,小数上升“浮起”;2)第二趟对余下的n个数(最大的数已“沉底”)按上法比较...

vb冒泡排序代码是什么?
冒泡排序法:Option Explicit Private Sub Form_Click()Const N = 10 Dim i%, a(1 To N), m%, j%, t Randomize For i = 1 To N '随机输出10个1位数 a(i) = Int(Rnd * 9 + 1)Print a(i);Next i Print For i = 1 To N - 1 '采用冒泡排序 For j = 1 To N -...

vb中冒泡排序法详解
书上讲的是不容易理解我来给你说下比如 3,1,2,5,6,4 为例首先把数按顺序赋给数组 a(1~6) 不难吧然后给你提一点冒泡法最后一个数会确定下来第一个数,来下面:从大到小排: 1。for i = 1 to 6 2。 for j=i to 6-i 3。 if a(j)...

vb冒泡法排序步骤
dim I,J as integer dim temp as integer '临时交换用 '初始化随机函数 randmize '取10个随机数(范围100以内)并存放到数组中 for I=0 to 9 A(I)=Int(Rnd*100)next I '开始冒泡排序 for I=0 to 8 for J=I+1 to 9 '冒泡原理(大的数下沉,小的数上浮)即(如果前面的大于后面的...

相似回答