作者fumizuki (小獅)
看板Visual_Basic
標題Re: [請益] 請問幾個問題~
時間Sun Apr 17 10:00:17 2005
※ 引述《regress (regress)》之銘言:
: 1.請問在程式中的運算式跟平常我們用的運算式都是先乘除後加減嗎?
: (我是幾個例子都一樣,不知道有例外嗎?)
所謂例外為何?
運算子的優先等級為:
算數運算子 → 比較運算子 → 邏輯運算子
算數運算子的優先等級為:
負號 -
指數 ^
乘法、除法 * /
整除 \
餘數運算 Mod
加法、減法 + -
字串串接 & + (與加、減法相同優先等級)
比較運算子 = <> < > <= >= Like Is
邏輯運算子 Not And Or Xor Eqv Imp
例如:
下列兩個運算式的結果相等:
3 Or 2 & 3 + 2 ^ 4
( 2 &
( ( 2 ^ 4
) + 3
) ) Or 3
2 ^ 4 = 16
16 + 3 = 19
2 & 19 = "219"
"219" Or 3 = 219
: -----------------------------------------------------------------------------
: 2.我看了書上範例,如下
: Private Sub Command1_Click()
: Dim customer(5 To 9, 1 To 3) As Integer
: customer(5, 1) = 100
: customer(6, 2) = 200
: customer(6, 3) = 150
: customer(7, 2) = 200
: customer(8, 1) = 900
: customer(9, 3) = 950
: For i = 5 To 9
: Print customer(i, 1) & " " & customer(i, 2) & " " & customer(i, 3)
: Next i
: End Sub
: 我本來是想再加個迴圈,代替第二維(如下),可是好像不行,是我寫的不對嗎?
: 因為我想實際應該會遇到第二維很大的情況,都用迴圈應該比較方便..
: For i =5 to 9
: For j =1 to 3
: Print customer(i, j)
: next i
: next j
For i = 5 To 9
For j = 1 To 3
Print customer(i, j);
If j = 3 Then Print Else Print " ";
Next
Next
: -----------------------------------------------------------------------------
: 3.我在書上看到用Redim 方式把陣列維數做改變,請問有實用上的意義嗎?
: 還是單純練功,因為如果我要改變維數,是不是不如重新宣告比較單純,
: 避免誤會?!
: thx!
通常都是一維陣列的範圍改變、n維陣列的範圍改變,很少有 n 改變的情形
Redim 就是重新宣告,Redim Preserve 才是改變其數量。
對於不確定大小的資料來說,會使用到動態陣列,
用 Redim 或 Redim Preserve 來改變大小,
或是使用 Split() 函數將分割出來的陣列以 Variant 型態儲存。
Redim 重新宣告陣列,不保留原值。
Redim Preserve 更改陣列的上、下限,會保留原值。
例如使用者輸入資料,輸入的個數不確定,隨時會新增或刪除數筆資料的時候就會用到。
--
人若無星爺,跟條鹹魚有何分別?
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 210.58.156.43