![[填空题] 要打印出50个在-100~100之间不同的随机整数,并找出第几个是最大数。给定的程序不完整,将程序补充完整。Option Base 1Private Sub Command1,第1张 [填空题] 要打印出50个在-100~100之间不同的随机整数,并找出第几个是最大数。给定的程序不完整,将程序补充完整。Option Base 1Private Sub Command1,第1张](/aiimages/%5B%E5%A1%AB%E7%A9%BA%E9%A2%98%5D+%E8%A6%81%E6%89%93%E5%8D%B0%E5%87%BA50%E4%B8%AA%E5%9C%A8-100%EF%BD%9E100%E4%B9%8B%E9%97%B4%E4%B8%8D%E5%90%8C%E7%9A%84%E9%9A%8F%E6%9C%BA%E6%95%B4%E6%95%B0%EF%BC%8C%E5%B9%B6%E6%89%BE%E5%87%BA%E7%AC%AC%E5%87%A0%E4%B8%AA%E6%98%AF%E6%9C%80%E5%A4%A7%E6%95%B0%E3%80%82%E7%BB%99%E5%AE%9A%E7%9A%84%E7%A8%8B%E5%BA%8F%E4%B8%8D%E5%AE%8C%E6%95%B4%EF%BC%8C%E5%B0%86%E7%A8%8B%E5%BA%8F%E8%A1%A5%E5%85%85%E5%AE%8C%E6%95%B4%E3%80%82Option+Base+1Private+Sub+Command1.png)
[填空题] 要打印出50个在-100~100之间不同的随机整数,并找出第几个是最大数。给定的程序不完整,将程序补充完整。
Option base 1
Private Sub Command1_Click()
Dim b()
Randomize
【12】
Do
x=Rnd
If x>0.5 Then y=1 Else y=-1
t=y*Int(Rnd*100)+1
【13】
Do While k<j
If t <> b(k)Then
k = k + 1
Else
Exit Do
End If
Loop
If k=j Then
ReDim Preserve b(k)
b(k)=t
Print b(k);
j=j+1
End If
Loop Until j>50
【14】
Max=b(1)
For n=2 To 50
If b(n)>Max Then
【15】
p = n
End If
Next n
Print "最大数是:";Max
Print "位置在第";p;"个"
End Sub
正确答案:[12] j=1[13] k=1[14] p=1[15] Max=b(n)解析:[分析]: 变量j是记录已产生数据的个数,变量k是查找是否有重复时记录用,变量 p是记录最大数据的位置。在查找最大数据之前,将数组的第一个下标和数据先记录到p和Max中。
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)