第三章:Visual Basic語言 本章提要: VB語法與Basic的異同 注釋語句 長語句的分行 條件語句 循環語句 運算操作 數據定義與賦值 函數和過程 一、VB與Basic VB之所以叫做“VisualBasic”就是因為它使用了Basic語言作為代碼,所以它們之間有著千絲萬縷的關系,如果學過Basic的話,看到VB的程序結構會感到很親切。但VB作為新生物,也超越了Basic的限制,有了許多自己的特點: VB建立了一種新的變量類型DD貨幣型變量,通過使用僅帶有二位小數的貨幣變量,就能避免因使用實型變量而帶來的數值積累誤差問題。 VB在調用函數(Function)時,必須在函數名后跟一對括號。 VB對白蘭地使用范圍重新做了規范,在Basic里把隱含變量都當作全局變量,而在VB里對隱含變量都當作局部變量。 VB里的說明語句(Declare),僅支持動態鏈結庫(DLL)的子程序和無變量函數。 使用數組,必須事先用Dim或Redim進行定義。 二、注釋語句 在使用注釋語句之前必須先了解注釋的作用,注釋不僅僅是對程序的解釋,有時它對于程序的調試也非常有用,譬如說可以利用注釋屏蔽一條語句以觀察變化,發現問題和錯誤。以后注釋語句將是我們在編程里最經常用到的語句之一。 在VB里,注釋語句有兩種,一種是用“Rem”關鍵字,這跟DOS里的批處理文件的用法一樣,還有一種是利用單引號“'”,例如: ‘DimaAsString與 RemDimaAsString的作用是一致的。 三、長語句的分行 在比較早的版本中,因為沒有象C等語言用“;”隔開語句與語句,VB的語句是必須寫在一行里的,不過后來版本的VB里如許用分行符“_”把一個長語句分成若干行來存放。 四、條件語句 如果你學過任何一種編程的話,都會知道在程序里控制其流程的有兩種語句,條件與循環,VB自然也不例外,其實不管哪種語言,條件和循環的樣子都差不多,只不過各有各的規矩罷了。 條件語句里,我們先來學習“If……Then……”語句。 它的一般語法是:
If<條件>Then <語句> <語句> ……… EndIf 與C語言不同,VB的條件語句更符合英語的語法,如果Then后面所跟的語句只有一條,可以寫成: If<條件>Then<語句> 而不用EndIf。 有時我們還會用到 If<條件>Then <語句> Else <語句> EndIf 更可以在Else里在嵌套If語句,如: If<條件>Then <語句> ElseIf <語句> Else <語句> EndIf 所有這些可以用一個表格表示: 條件1 True False 語 句 1 條件2 True False 語 句 2 條件3 True False … … … ……………………… 條件N True False 語句N 語句N+1 用了過多的Else后你會感到很不方便,而且程序結構也不清晰,所以大多數的語言還有Select語句幫助解決這個問題。 VB里的Select語句的格式是這樣的: SelectCase<變量名> Case<情況1> …… Case<情況2> …… Case<情況3> …… …… …… CaseElse …… EndSelect 例如: SelectCasea Case1 Print“a=1” Case2 Print“a=2” CaseElse Print“adoesnotequalto1or2.” EndSelect 四、循環語句 循環結構是計算機語言里一種重要的結構,它的應用廣泛,最簡單的例子是累加器的作用,還可以用于窮舉法,更直觀的例子是把某件事重復指定的次數,這樣就不用把要重復的語句輸入多次,而通過循環結構完成,非常方便。 C語言里有一個“for”循環語句,VB里也有“For”關鍵字,作用也差不多,只是VB的“For”語句更容易理解。它的格式是: For<循環變量>=<初賦值>To<終值>[Step<步長>] …… …… Next<循環變量> 在默認情況下,Step被設為“1”,可以省略,Step也可以設為負值,例如: Dima=0 ForI=1To10 a=a I NextI 這是一個最簡單的累加器的例子,把1到10累加在一起,然后賦值給“a”這樣的效果和上面是一樣的,只不過是倒著加罷了,請看: Dima=0 ForI=10To1StepC1 a=a I NextI While語句也是一個很常用的循環語句,它的形式很多。 DoWhile……Loop語句 While……Wend語句 Do……LoopWhile While后面都跟邏輯條件判斷,“DoWhile……Loop語句”和“While……Wend語句”作用相似,都是先判斷While后面的條件是否為“真”,如果為“真”則執行里面的語句,如果為“假”,則退出循環,循環直至條件為“假”終止?!癉o……LoopWhile”與前兩者的區別在于,它不管條件的真假,都會先執行“Do”后面的語句,也就是說,它至少執行語句一次。 與While用法相似的還有Until語句,它是直至條件為真則終止循環,句式把While上述三個語句的While換成Until即可,但是因為容易記混,所以我建議只用While即可。Until<條件>可以相當于WhileNot<條件>。 For循環和Whlie循環應當根據適當的環境使用,它們有時也可替換。 五、運算操作 數學運算 +:加法運算,也適合于字符串的之間的合并運算。 -:加法運算。 *:乘法運算。 /:除法運算。 :整除運算。 Mod:求余運算。例如:aModb表示a被b整除以后的余數。 ^:冪運算。A^B表示以A為底的B次方。 關系運算 關系運算也稱比較運算,它表示不等式的真或假,VB共提供六種運算符,分別是=(等于),>(大于),<(小于),>=(大于等于),<=(小于等于)和<>(不等于)。 邏輯運算 邏輯運算是對真或假的運算,我將列表說明:
|