设有下面程序代码: Private Sub Commandl Click() Dim a As Variant a=Array(22,43,23,56,87,45,67,12,98,98,56,34,23,75,64) m=a(0)n=m

admin2019-04-29  23

问题 设有下面程序代码:
Private Sub Commandl Click()
  Dim a As Variant
  a=Array(22,43,23,56,87,45,67,12,98,98,56,34,23,75,64)
  m=a(0)n=m
  For k=1 To UBound(a)
   Ifa(k)>m Then
     n=m:m=a(k)
    Elselfa(k)>n And a(k)<>m Then
     n=a(k)
  End If
  Next k
  Print n
End Sub
程序运行时的输出是

选项 A、数组中最大的数(即98)
B、数组中最小的数(即12)
C、数组中第2大的数(即87)
D、数组中第1个数(即22)

答案C

解析 本题显然是求取数组最大值的,先取得数组的第一个元素作为最大值,然后用m保存最大值;在循环中如果发现了有比m还大的数组元素,则将该元素作为新的最大值,原来的最大值m赋值给n:如果元素不比m大就去比较元素是否大于n,若大于n则将元素赋值给n,所以循环结束后n中的值是数组中第2大的数。
转载请注明原文地址:https://jikaoti.com/ti/NmN0FFFM
0

随机试题
最新回复(0)