舞月版教程 - 第5課:條件語句的使用
條件語句的使用
本教程歡迎轉載,但請註明:轉載自簡單游官方論壇:bbs.jdyou.com
作者:舞月
所謂條件語句,即「滿足」或「不滿足」,也可以理解為「是」或「否」。比如在上幾節說過的ifcolor,既屬於此類。
按鍵精靈中,條件語句只有兩個:ifcolor..else..endif和if..else..endif
ifcolor語句不再講解,這節把重點放if上。也為鞏固上一節中變量的知識。
if語句的格式:
If [條件表達式]
//這裡可以寫功能代碼
Else
//這裡可以寫功能代碼
EndIf
解釋:
if後面跟一個空格鍵,然後寫條件表達式。如果條件滿足,則只執行if到else中的代碼,否則就執行else到endif中的代碼。這裡是很明顯的「是」與「非」劃分。
所謂「條件表達式」,既條件的結果只有兩個值:「真/假」。如:1=1(真) 1=2(假) 1>2(假) 1<2(真)。把類似於這樣的值放在一起對比,即可得出if語句之後要執行的路線。
上面的內容對初學者來講,可能比較難以理解消化。建議看過下面的內容,再回頭看一遍上面的文字,之所以把這部分放在開頭,是為了加深以下文字的理解。
先來做一個實際的例子:
If 1>3
MessageBox 不成立
Else
MessageBox 成立
EndIf
把上面代碼放在按鍵精靈中執行,可以直觀的看到結果,然後在把「>」換成「<」試一下。可以加深對條件語句的理解!
這個例子並沒有實際作用。但考慮做為導讀,直觀性比較強。下面來做一個稍微複雜的:
n=1
Rem s
n=n+1
If n mod 2=0
VBSCall Call MessageBox("偶數:" & n)
EndIf
Goto s
你能只憑理解力就可以猜出以上代碼的結果麼?猜不出就把他放在按鍵精靈下面執行一次,看看效果!
這裡有幾個知識點:
1、rem s和goto s組成一個循環體,不斷執行。
2、n=n+1讓n這個變量在每次循環時自身數值遞增1。(對這句不大理解的,可以參看前一節)
3、n mod 2首先解釋一下mod的意義,mod是取余。(余是什麼?如果你有小學2年級的書,可以翻查一下,我在後面也會有對比講解)
4、&代表字符串連接符。
再看一個字符串對比的例子:
hello="你好"
VBSCall name=InputBox("請輸入姓名:")
if name="簡單游"
VBSCall Call MessageBox(hello & name & ",身份已確認")
else
VBSCall Call MessageBox(hello & name & ",身份無法確認")
endif
思路比較亂!如果看完這節還是不太理解,請從這節的開始再看一次。
可以用的條件表達式中的符號說明:
= 等於號 對比兩個值是否相等。相等返回真,不等返回假
> 大於號 當左值大於右值時,返回真,否則返回假
< 小於號 當左值小於右值時,返回真,否則返回假
>= 大於等於號 當左值大於或者等於右值時,返回真,否則返回假
<= 小於等於號 當左值小於或者等於右值時,返回真,否則返回假
可以用在數值計算中的符號說明:
+ 加 兩個數字相加,可以是小數,可以是正負數。
- 減 兩個數字相減,可以是小數,可以是正負數。
* 乘 兩個數字相乘,可以是小數,可以是正負數。
/ 除 兩個數字相除,可以是小數,可以是正負數,但除數不能為0。
mod 取余 兩個數字相余,必須是整數。
字符串相連的符號說明:
& 連接符,音同:「And」 該連接符的左右必須有變量或常量
(常量的定義很簡單,就是固定的數或字符串,比如1,或者"簡單游"。都是常量,不可變)
+ 連接符 該連接符必須兩邊均為字符串才可使用。一般不用。
還有一個問題沒有交代,邏輯運算符。留到以後說吧。