5

这是在 3 中查找最大值的代码,但我想要在 5 中查找最大值的代码:

Dim a, b, c As Integer

a = InputBox("enter 1st no.") 
b = InputBox("enter 2nd no.") 
c = InputBox("enter 3rd no.")

If a > b Then 
    If a > c Then 
        MsgBox("A is Greater") 
    Else 
        MsgBox("C is greater") 
    End If 
Else 
    If b > c Then 
        MsgBox("B is Greater") 
    Else 
        MsgBox("C is Greater")
    End If 
End If 
4

3 回答 3

17

将值放入数组并使用Max函数IEnumerable

'Requires Linq for Max() function extension
Imports System.Linq
'This is needed for List
Imports System.Collections.Generic

' Create a list of Long values. 
Dim longs As New List(Of Long)(New Long() _
                                   {4294967296L, 466855135L, 81125L})

' Get the maximum value in the list. 
Dim max As Long = longs.Max()

' Display the result.
MsgBox("The largest number is " & max)

' This code produces the following output: 
' 
' The largest number is 4294967296
于 2013-03-26T18:33:49.710 回答
4

正如大卫建议的那样,将您的价值观列在一个列表中。这比使用单个变量更容易,并且可以根据要求扩展到尽可能多的值(多达数百万个值)。

如果出于某种原因需要保留单个变量,请执行以下操作:

Dim max As Integer = a
Dim name As String = "A"
If b > max Then
    max = b
    name = "B"
End If
If c > max Then
    max = c
    name = "C"
End If
If d > max Then
    max = d
    name = "D"
End If
' ...  extend to as many variables as you need.
MsgBox(name & " is greater")
于 2013-03-26T19:50:13.887 回答
2

给你一个简单的解决方案,

Dim xMaxNo As Integer
Dim xTemp As Integer

For i as integer = 1 To 5
   xTemp =  InputBox("enter No: " & i)
   xMaxNo = if(xTemp > xMaxNo, xTemp, xMaxNo)
Next

MsgBox("The Highest Number is " & xMaxNo)
于 2013-03-26T19:41:59.960 回答