用vb编写*利用随机函数产生20个10~99之间(包括10和99)的随机整数存入一维数组A,

*将其排序,求出相邻两个数的最大差值。这个多点,请高手们支招啊~~很急!!!!... *将其排序,求出相邻两个数的最大差值。
这个多点,请高手们支招啊~~很急!!!!
展开
 我来答
葛子之骑白马才076d
2010-05-28 · TA获得超过520个赞
知道答主
回答量:713
采纳率:0%
帮助的人:397万
展开全部
'只须在窗体内忝加一个command即可
Private Sub Command1_Click()
Cls
Dim a(1 To 20), b(1 To 19)
Randomize
Print "随机生成的这组数是:"
For i = 1 To 20
a(i) = Int(Rnd * 90) + 10
Print a(i);
If i = 10 Then Print
Next
Print
Print
Print "这组数按从大到小的顺序排列每10人一行输出如下:"
For i = 1 To 20
For j = i + 1 To 20
If a(i) < a(j) Then
t = a(i): a(i) = a(j): a(j) = t
End If
Next
Print a(i);
If i Mod 10 = 0 Then Print
Next
For i = 1 To 19
b(i) = a(i) - a(i + 1)
Next
x = b(1)
For i = 1 To 19
If x < b(i) Then x = b(i)
Next
Print
Print "相邻两个数的最大差值是:" & x
End Sub
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
远风的梦想家
2010-05-28 · TA获得超过2550个赞
知道大有可为答主
回答量:1389
采纳率:0%
帮助的人:0
展开全部
Option Explicit
Option Base 1
Dim a%(80), i%, k%, t%, b%(80)
Private Sub Command1_Click()
Me.Cls
Dim j As Integer
Randomize

For i = 1 To 80
a(i) = Int(Rnd * 90) + 10
Next i
k = 0
t = 1
For i = 1 To 79
b(i) = Abs(a(i + 1) - a(i))
If b(i) > k Then
k = b(i)
t = i
End If
Next i

Print "全部"

For i = 1 To 80
Print a(i);
If i Mod 10 = 0 Then Print
Next i

Print "最大差值:" & k & ",是" & a(t + 1) & "和" & a(t) & "之差"
End Sub
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
zmwhao
2010-05-28 · 超过19用户采纳过TA的回答
知道答主
回答量:87
采纳率:0%
帮助的人:33.5万
展开全部
dim n ,m,a(19),max
max=0
for n=0 to 19
a(n)=int((rnd*90)+10) '生成20个10-99的随机数
next n
for n=0 to 18
for m=n+1 to 19
if a(n)>a(m) then
swap a(n),a(m) ‘排序从小到大
end if
next m
next n
for n=1 to 19
if a(n)-a(n-1)>max then
max=a(n)-a(n-1) ’计算相差最大值,赋值给max
end if
next n
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
zhxp_008
2010-05-28 · 超过14用户采纳过TA的回答
知道答主
回答量:41
采纳率:0%
帮助的人:37.6万
展开全部
Dim i%, j%, a%(20), max%
max = 0
Randomize
For i = 1 To 20
a(i) = Int((Rnd * 90) + 10) '生成20个10-99的随机数
Print a(i);
Next i
For i = 1 To 19
For j = i + 1 To 20
If a(i) > a(j) Then
t = a(i): a(i) = a(j): a(j) = t '排序从小到大
End If
Next j
Next i

Print
For i = 1 To 20
Print a(i);
Next i

For i = 2 To 20
If a(i) - a(i - 1) > max Then
max = a(i) - a(i - 1) '计算相差最大值,赋值给max
End If
Next i
Print
Print "max="; max
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
不小心牛叉了
2010-05-28
知道答主
回答量:21
采纳率:0%
帮助的人:0
展开全部
那你写吧,我就不写了
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 2条折叠回答
收起 更多回答(4)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式