vb的题目:随机生成100个10到1000之间的随机数,将它们之中的偶数个数统计出来,并计算所有奇数之和

奇数之和是指随机数中奇数的和

放一个列表框用来显示生成的100个随即数,2个按纽,其中一个用来生成随即数,另一个用来统计和计算结果,代码如下
Private Sub Command1_Click()
Dim i As Integer
For i = 0 To 99
Randomize
List1.List(i) = Int(Rnd * (1000 - 10 + 1) + 10)
Next i
End Sub

Private Sub Command2_Click()
Dim n As Integer, x As Long, y As Integer
y = 0
For n = 0 To 99
If Val(List1.List(n)) Mod 2 <> 0 Then x = x + Val(List1.List(n))
If Val(List1.List(n)) Mod 2 = 0 Then y = y + 1
Next n
Print "偶数个数为:" & y & "奇数之和为:" & x

End Sub

Private Sub Form_Load()
Command1.Caption = "随机生成100个10到1000之间的随机数"
Command2.Caption = "统计偶数个数和奇数和"
List1.Clear
End Sub
温馨提示:答案为网友推荐,仅供参考
第1个回答  2009-04-23
dim a(100) as integer
dim i,m,n as integer
for i =0 to 99
a(i)=Int((1000 - 10 + 1) * Rnd + 10)
if mod(a(i)/2)=0 then
m=m+1
else
n=n+a(i)
end if
next i

其中m为偶数个数,n为所有奇数之和本回答被网友采纳
第2个回答  2009-04-23
Private Sub Command1_Click()
Dim a(99) As Integer
For i = 0 To 99
a(i) = Fix(Rnd * 991) + 10

If i <> 0 And i Mod 10 = 0 Then
Print
Print a(i);
Else
Print a(i);
End If

If a(i) Mod 2 = 0 Then
n = n + 1
Else
s = s + a(i)
End If
Next
Print
Print "偶数的个数" & n; "奇数之和" & s
End Sub
第3个回答  2009-04-23
Sub run()
Dim Floor As Integer
Dim Ceil As Integer
Dim Dotimes As Integer
Dim SumOdd As Integer '奇数和
Dim CountEven As Integer '偶数个数
Dim NumberFlag As Integer '随机数
'范围赋值,10到1000
Floor = 10
Ceil = 1000
'次数100
Dotimes = 100

Ceil = Ceil + 1 'Rnd函数取值是[0.1),所以要加1
SumOdd = 0
CountEven = 0

Randomize 'rnd每次随机

For i = 1 To Dotimes
NumberFlag = Floor + Int((Ceil - Floor) * Rnd)
If NumberFlag Mod 2 <> 0 Then '除2余数不是0的是奇数
SumOdd = SumOdd + NumberFlag
Else '若是偶数
CountEven = CountEven + 1
End If
Next

Print "偶数个数有" & CountEven & "个"
Print "奇数和为" & SumOdd
End Sub