[.NET] 請教選擇排序法的問題

看板Visual_Basic作者 (別急著吃棉花糖)時間12年前 (2013/05/15 16:10), 編輯推噓1(102)
留言3則, 2人參與, 最新討論串1/1
請輸入專案類型(網站專案或者應用程式專案):vb2010 請教各位前輩 試著用vb 2010來寫一個簡單的選擇排序法(由小到大) 以下是我的程式 Dim a(), minn a = Split(TextBox1.Text, ",") '將輸入的數用逗點區分存到a陣列 For i = 0 To UBound(a) - 1 '選擇排序 minn = i '先將最小值設定給i For j = i + 1 To UBound(a) If a(minn) > a(j) Then minn = j End If Next Next Label1.Text = minn 當我輸入1,22,5的時候,為什麼顯示出來不是2呢?當i跑到1時,minn=1 j是從2開始判斷,所以判斷22>5,if成立,把j給minn 結束程式,為什麼印出來卻是1呢?感謝各位指正 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 124.11.171.152

05/15 20:14, , 1F
要轉整數比較 CInt(a(minn)) > CInt(a(j))
05/15 20:14, 1F

05/16 02:08, , 2F
謝謝brian大,我抓了一整天,抓不出錯誤。以為陣列設為
05/16 02:08, 2F

05/16 02:09, , 3F
object可變型態,就可以做判斷。
05/16 02:09, 3F
文章代碼(AID): #1HaqC1UZ (Visual_Basic)
文章代碼(AID): #1HaqC1UZ (Visual_Basic)