如何用vb设计一个程序,可以将输入的10个以上的数字 按大小顺序排列出来,可以给我思路,也可以给我答案。

 我来答
笑十三螂
2010-12-02 · TA获得超过313个赞
知道小有建树答主
回答量:313
采纳率:0%
帮助的人:233万
展开全部
其实从思想上来说,就是一个排序的思路问题。
排序的方法有很多。
说2个最简单的(设让结果从小到大排列)
方法一
假设10个数
把第一个依次与他后面的比较,如果比后面的大,就把位子换下,这样当第一个看完后面9个数后第一个数就变成最小的数了
再把第二个依次与后面8个比较,让第二个变成9个中最小的
以此类推,每次都拿还没比出顺序的第一个数和它后面的每个数比较
这样当第九个数拿出来和第十个数比完后,整个数列就变成从小到大排列的了
方法二(叫做冒泡)
依次拿第一个数和第二个比,第二个和第三个比,凡是前面的数比后面的数大的话就换位子,当第九个和第十个比完后,第十个位子永远是最大的数。然后再对前9个数再做一次这个事情,那第九个数就变9个里最大的了,直到最后一次第一个数和第二个数比完(此时后面8个数已经按序排列了)后,整个数列就变成了从小到大排列了
ChenJianCHE
2010-12-02 · TA获得超过201个赞
知道小有建树答主
回答量:245
采纳率:100%
帮助的人:235万
展开全部
自己搜搜排序法吧

Option Explicit
Option Base 1
Dim xx

Private Sub Command1_Click()
'选择排序法
Dim i As Integer, j As Integer, t As Integer
Debug.Print: Debug.Print "选择排序法 从小到大排列"
For i = 1 To 9
For j = i + 1 To 10
'"<"从大到小排列,xx(1)最大,">"从小到大排列,xx(1)最小
If xx(i) > xx(j) Then t = xx(i): xx(i) = xx(j): xx(j) = t
Next j
Next i
For i = 1 To 10
Debug.Print xx(i); Space(1);
Next i
End Sub

Private Sub Command2_Click()
'冒泡排序法
Dim i As Integer, j As Integer, t As Integer
Debug.Print: Debug.Print "冒泡排序法从大到小排列"
For i = 1 To 9
For j = 1 To 10 - i
'"<"从大到小排列,xx(1)最大,">"从小到大排列,xx(1)最小
If xx(j) < xx(j + 1) Then t = xx(j): xx(j) = xx(j + 1): xx(j + 1) = t
Next j
Next i
For i = 1 To 10
Debug.Print xx(i); Space(1);
Next i
End Sub

Private Sub Command3_Click()
'交换排序法
Dim i As Integer, j As Integer, p As Integer, t As Integer
Debug.Print: Debug.Print "交换排序法从小到大排列"
For i = 1 To 9
p = i
For j = i + 1 To 10
'"<"从大到小排列,xx(1)最大,">"从小到大排列,xx(1)最小
If xx(p) > xx(j) Then p = j
Next j
If p <> i Then t = xx(p): xx(p) = xx(i): xx(i) = t
Next i
For i = 1 To 10
Debug.Print xx(i); Space(1);
Next i
End Sub

Private Sub Command4_Click()
'找最大值
Dim i As Integer
For i = 2 To 10
If xx(1) < xx(i) Then xx(1) = xx(i)
Next i
Debug.Print: Debug.Print "最大值是:"; xx(1)
Form_Load
End Sub

Private Sub Command5_Click()
'找最小值
Dim i As Integer
For i = 2 To 10
If xx(1) > xx(i) Then xx(1) = xx(i)
Next i
Debug.Print: Debug.Print "最小值是:"; xx(1)
Form_Load
End Sub

Private Sub Form_Load()
xx = Array(10, -10, 20, 60, -50, 40, -12, 11, 36, 33)
End Sub
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式