VB中求最大数和最小数的疑问?

来源:百度知道 编辑:UC知道 时间:2024/05/10 06:47:44
其中a()里面有100个整数,求数组里面的最大数,最小数,不明白为什么intmin那里会是最小数?
Private Sub Command2_Click()
Dim intMax As Integer
Dim intMin As Integer
Dim k As Integer
intMax = a(1)
intMin = a(1)
For k = 2 To 100
If intMax < a(k) Then
intMax = a(k)
End If
If intMin > a(k) Then'为什么这里会是定义为最小的数?
intMin = a(k)
End If
Next
End Sub

这里是假设a(1)最小,并把它的值赋给intmin。然后从它后面的数开始做比较,遇到比intmin小的数就把它的值给intmin,由此循环下去,把数组中的每个数都做一次比较以后,intmin的值自然就是数组中最小的了。

另外一个问题就是从哪个数开始循环的问题,如果你数组的下标是从0开始的,那么循环就从2到99,如果数组下标是从1开始的,那么循环就从2到100,你的程序数组的下标应该是从1到100的吧。不管是从什么开始,只要不漏掉数组中的任何一个数就行了。

和最大数是一个道理的啊!~从第一个数比到最后一个数 只要有小的 就把小的赋给intMin 循环到最后就是最小的了!~

intMin 这个值已开始给赋值的时候 ,intMin = a(1),这个值现在当然从a(1)开始了

有什么不明白的,K从2到100,如a(k)小于intMin,就把a(k)赋给intMin了,所以intMin是最小的数。还有,数组第一个数是a(0),且从2-99之间循环才对。intMax = a(0)
intMin = a(0),For k = 2 To 99。