作者stator (別急著吃棉花糖)
看板Visual_Basic
標題[.NET] 請教選擇排序法的問題
時間Wed May 15 16:10:39 2013
請輸入專案類型(網站專案或者應用程式專案):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
推 brian90191:要轉整數比較 CInt(a(minn)) > CInt(a(j)) 05/15 20:14
→ stator:謝謝brian大,我抓了一整天,抓不出錯誤。以為陣列設為 05/16 02:08
→ stator:object可變型態,就可以做判斷。 05/16 02:09