簡體   English   中英

如何在ASC中對VB.net數組進行排序

[英]How to sort VB.net array in ASC

首先,我必須承認我是VB.net的初學者。 我有此代碼,必須按升序對數組進行排序。 首先它將要求多少數組大小,然后插入數據。 但是我要使它正常工作面臨問題。有人可以幫我嗎? 下面是我的代碼:

Module Module1
    Sub Main()

        Dim A(20) As Integer
        Dim num, i, j, k, arr, temp As Integer

        Console.Write("enter size num:")
        Dim add = Console.ReadLine

        If Integer.TryParse(add, num) Then
            'Console.WriteLine("valid. num = " & num)
            For i = 0 To num - 1
                Console.Write("enter num:")
                A(i) = Console.ReadLine

            Next i

            For i = 0 To num - 1
                For j = i + 1 To num - j
                    If A(i) > A(j) Then
                        temp = A(i)
                        A(i) = A(j)
                        A(j) = temp
                    End If
                Next j
                Console.Write(A(i))
            Next i
        Else
            Console.WriteLine("Invalid.Data is not number")
        End If
        Console.ReadLine()
    End Sub
End Module

謝謝,任何幫助將不勝感激。

您問題的直接原因是

Console.Write(A(i))

在完成排序操作之前將調用。 第二個問題是您沒有驗證輸入的數字,您確實應該在代碼頂部指定Option Strict On並清除導致的編譯錯誤。

如果您將其寫為練習,那很好,但是出於生產目的,您應該首選Tim Schmelter的方法。

您還沒有提到您的問題。 但是,通常對Int32()排序非常容易,可以使用Array.Sort

Array.Sort(A) ' finished '

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM