[VB6 ] 請教陣列問題

看板Visual_Basic作者 (逐臭之夫)時間15年前 (2008/10/09 10:55), 編輯推噓2(201)
留言3則, 2人參與, 最新討論串1/1
i = 0 n = Val(InputBox("請連續輸入n個數值")) While n <> -1 ReDim x(i) x(i) = n i = i + 1 n = Val(InputBox("請連續輸入n個數值")) Wend For a = x(1) To x(i) If x(a) > Max Then Max = x(a) Next Print "最大值=" & Max End Sub 小弟事VB新手,此程式原本結果應該是,連續輸入數值 直到輸入-1時結束輸入。並列印輸出最大的輸入值。 不過我執行以後 都是陣列索引超出範圍。 特來請教 各位高手 -- -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 59.127.61.11

10/09 11:18, , 1F
你做ReDim的時候陣列的值就會被清空了
10/09 11:18, 1F

10/09 11:19, , 2F
所以你只能記住做後的-1
10/09 11:19, 2F

10/10 15:54, , 3F
改成 ReDim Preserve x(i)
10/10 15:54, 3F
文章代碼(AID): #18xNAHfH (Visual_Basic)