永发信息网

vb输入三个随机数,按从大到小的次序显示

答案:5  悬赏:0  手机版
解决时间 2021-05-01 08:26
  • 提问者网友:半生酒醒
  • 2021-04-30 22:44

例:排序前: 65 80 44

排序后: 80 65 44

最佳答案
  • 五星知识达人网友:未来江山和你
  • 2021-04-30 23:41
Dim a(3) As Integer, i%
Private Sub Cmd1_Click()
Randomize
For i = 1 To 3
a(i) = Int(Rnd * 900)
Next i
Print "排序前" & a(1) & " " & a(2) & " " & a(3)

If a(2) > a(1) Then t = a(1): a(1) = a(2): a(2) = t
If a(3) > a(1) Then t = a(1): a(1) = a(3): a(3) = t
If a(3) > a(2) Then t = a(2): a(2) = a(3): a(3) = t

Print "排序后" & a(1) & " " & a(2) & " " & a(3)

End Sub
全部回答
  • 1楼网友:鸽屿
  • 2021-05-01 03:07
Private Sub Command1_Click() Dim a(99) As Integer Randomize Form2.AutoRedraw = True Dim i As Integer, j As Integer, temp As Integer For i = 0 To 2 a(i) = Int(Rnd * 100) ' Print a(i) & " "; '在窗体上输出原始数据 Next i For i = 0 To 2 '冒泡排序 For j = 0 To 1 - 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 Print For i = 0 To 2 '在窗体上输出排序后的数据 Text1.Text = Text1.Text & " " & a(i) Next i End Sub
  • 2楼网友:千夜
  • 2021-05-01 02:52

首先生成三个数据,然后执行比较操作。再按顺序输出。

  • 3楼网友:行雁书
  • 2021-05-01 01:59
#include "stdio.h" main() { int a,b,c; scanf("%d%d%d",&a,&b,&c); if(a>b&&a>c) { printf("%d%d",a); if(b>=c)printf("%d%d",b,c); else printf("%d%d",c,b); } else if(b>a&&b>c) { printf("%d",b); if(a>=c)printf("%d%d",a,c); else printf("%d%d",c,a); } else { printf("%d",c); if(a>=b)printf("%d%d",a,b); else printf("%d%d",b,a); } }
  • 4楼网友:逃夭
  • 2021-05-01 00:47

Private Sub Command1_Click() Dim a(2) As Integer Dim i, sngt, intmin As Integer For i = 0 To 2

a(i) = InputBox("请输入第" & i + 1 & "个数:", "提示") Print a(i); Next i For i = 0 To 2 intmin = i '对第i遍排序,初始假定第i个元素最小 For j = i + 1 To 2 '找出最小的元素序号 If a(j) < a(intmin) Then intmin = j Next j '将找出的最小元素与第i个元素交换 sngt = a(i) a(i) = a(intmin) a(intmin) = sngt Next i '打印输出 For i = 0 To 2 Print a(i); '不换行输出 Next i End Sub

我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯