中易网

vb中的冒泡排序

答案:2  悬赏:50  
解决时间 2021-04-28 22:12

    Dim i As Integer
    Dim j As Integer
    Dim t As Integer
   
    For i = LBound(a) + 1 To UBound(a)【就是这2个For语句,不知道为什么要这样
        For j = UBound(a) To i Step -1          定 义 i 和 j 】
            If a(j - 1) > a(j) Then
                t = a(j - 1)
                a(j - 1) = a(j)
                a(j) = t
            End If
        Next
最佳答案

冒泡排序法思路:(假设有10个数,需要从小到大排)


首先拿出第一个来和其他9个逐个来比较,这样就可以找到10个中最小的,放到第一位;


接着拿第二个来和其他8个逐个比较,这样就可以找到剩下9个中得最小的,放到第二位;


接着拿第三个来和其他7个逐个比较,这样就可以找到剩下8个中得最小的,放到第三位;


。。。。。。就可以了。也许下面的看了会更清楚点


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)小的话,就交换
    t = a(j)
    a(j) = a(i)
    a(i) = t
    End If
    Next j
Next i



For k = 1 To 10
    Print a(k);   ‘打印排好的数
Next k
Print

全部回答

a是数组啊,就是要排序的那些参数LBound(a) 和 UBound(a)分别取出数组的上下标,这样可以根据上下标来确定数组中某个参数的值,就是第几个的意思

我要举报
如以上问答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
韩语零基础入门最好怎么学?
超级QQ预付费版,用电脑登陆加活跃天数么?
梦幻西游绑定点数算不算充值
我的档案在哪里?
宁波凤凰山游乐园是一票通玩吗?门票价是多少
谁能给我说个烟圈的有效连接?
想改密码但问题忘了耶
家里有威能壁挂炉,暖气片可以买别的牌子吗
农行信用卡透支5000,分6期,每月还多少
如果你有一间11平方米的铺面你想做什么不的做
中国联通祥和手机大卖场这个地址在什么地方,
用M值兑换物品
我会员没了,那什么会消失
步步高i389有主题不?
浪漫满屋泰国版有番外?
推荐资讯
飞车图标6级是几级?
到底女人是天使,还是天使是女人
电影《非诚勿扰2》中,台词:“你见或不见我
dnfpk泰拉石四星 完了该什么级别了
有没有比较特殊点的比较圆滑的!那种字体?如
习惯一个人对你好 但是又不喜欢他 当成是朋友
夢幻西遊人物飛升後跑50標會有多少錢?
java中long和float的大小问题
哪里有服装代销?一件代发!我还没信誉怎么办
DNF除了附魔师还有什么副职业?
qq华夏会员199 的礼包怎么领 从怎么搞那代码
赛尔号布克克该打啥刷值
手机登qq时,显示手机磁盘不足,清理后重新登
刺客的套装怎么选啊?