掃碼下載APP
及時接收最新考試資訊及
備考信息
DO WHILE...LOOP:先判斷后執(zhí)行循環(huán)語句;
DO...LOOP WHILE:先執(zhí)行后判斷循環(huán)語句;
FOR...NEXT:限定次數(shù)循環(huán)語句;
GOTO...:無條件轉(zhuǎn)移語句。
所謂程序結(jié)構(gòu),就是指程序代碼的執(zhí)行順序,按照執(zhí)行順序的不同我們將程序結(jié)構(gòu)大致分為以下三類:順序結(jié)構(gòu)、分支判斷選擇結(jié)構(gòu)和循環(huán)結(jié)構(gòu)?;旧衔覀兡壳澳芙佑|到的語句結(jié)構(gòu)都離不了這三種類別。
第一類,順序結(jié)構(gòu)。這類語句是按照程序代碼書寫的先后順序一句一句從前往后順序執(zhí)行的,這類語句結(jié)構(gòu)是最簡單且容易理解的一類。那么如何才算一個完整的語句結(jié)束呢?這在不同的編程語言環(huán)境中是不盡相同的,比如C語言中以分號作為每個語句的結(jié)束標(biāo)志,而VBA中,則以換行符作為一個語句的結(jié)束標(biāo)志,換句話說,只要在同一行書寫,哪怕再多的代碼都被看作一條語句來執(zhí)行。
第二類是分支判斷選擇結(jié)構(gòu)。這類結(jié)構(gòu)并不像順序結(jié)構(gòu)那樣按順序逐條執(zhí)行代碼,而需要按照判斷語句的結(jié)果對各條分支語句進(jìn)行選擇執(zhí)行,所以需要通過分支判斷選擇語句,對本結(jié)構(gòu)代碼加以控制執(zhí)行。例如,“IF...ELSE...END IF”,這條語句以“IF”開始,至“END IF”結(jié)束,其中在IF所在行書寫判斷的條件表達(dá)式,“IF”和“ELSE”之間書寫條件表達(dá)式為“真”時執(zhí)行的代碼,“ELSE”和“END IF”之間書寫條件表達(dá)式為“假”時執(zhí)行的代碼。實例如下:
IF 條件 THEN
語句1
ELSE
語句2
END IF
在這里實例程序中,就體現(xiàn)了一個典型的分支判斷選擇結(jié)構(gòu),程序是這樣執(zhí)行的:當(dāng)程序執(zhí)行到IF語句時,系統(tǒng)會計算條件表達(dá)式的值,如果該值為“真”(即條件成立),那么就執(zhí)行語句1,然后結(jié)束該IF結(jié)構(gòu)去執(zhí)行END IF后面的代碼;如果該值為“假”(即條件不成立),那么就執(zhí)行語句2,然后結(jié)束該IF結(jié)構(gòu)去執(zhí)行END IF后面的代碼。所以通過這里實例可以看出,在分支判斷選擇結(jié)構(gòu)中包含的語句不是每一個都被執(zhí)行到的,其執(zhí)行與否、何時執(zhí)行由條件表達(dá)式控制。1條IF條件語句可以區(qū)分2種情況下的執(zhí)行代碼,那么多于2種情況該怎么辦呢?可以通過在IF語句中嵌套IF語句來實現(xiàn)多條件判斷執(zhí)行的效果。實例如下:
IF 條件1 THEN
語句1
ELSE
IF 條件2 THEN
語句2
ELSE
語句3
END IF
END IF
這和EXCEL中的IF函數(shù)的嵌套類似。除了IF語句外,該類結(jié)構(gòu)還有一條語句,也可以實現(xiàn)多條件的分支判斷選擇結(jié)構(gòu),即:
SELECT CASE 條件
CASE 值1:
語句1
CASE 值2:
語句2
CASE ...
...
ELSE CASE:
語句3
END SELECT
這里通過計算條件表達(dá)式的值與各分支語句中的值進(jìn)行比較來選擇具體到哪個分支中執(zhí)行相應(yīng)的代碼。
第三類是循環(huán)結(jié)構(gòu)。和第二類分支結(jié)構(gòu)類似,循環(huán)結(jié)構(gòu)也需要通過循環(huán)語句來控制程序代碼的執(zhí)行。按照循環(huán)條件的位置和計算方法不同,循環(huán)語句大致分為如下三種:
DO WHILE...LOOP:先判斷后執(zhí)行循環(huán)語句;
DO...LOOP WHILE:先執(zhí)行后判斷循環(huán)語句;
FOR...NEXT:限定次數(shù)循環(huán)語句;
前2類是不限定次數(shù)或者在代碼執(zhí)行前無法確切指定循環(huán)次數(shù)的循環(huán)控制語句。實例程序分別為:
DO WHILE 條件
語句1
語句2
LOOP
這類語句先判斷條件表達(dá)式的值,然后根據(jù)該值決定是否進(jìn)入或繼續(xù)執(zhí)行循環(huán)體內(nèi)部的語句1和2。
DO
語句1
語句2
LOOP WHILE 條件
這類語句先執(zhí)行循環(huán)體內(nèi)部的語句1和2,然后進(jìn)一步根據(jù)條件表達(dá)式的值決定是否再次回到DO語句繼續(xù)執(zhí)行循環(huán)體內(nèi)的語句。
第3類是限定循環(huán)執(zhí)行次數(shù)的循環(huán)語句。實例程序為:
FOR 控制變量=1 TO N STEP 步長
語句
NEXT
這里通過每次循環(huán)后控制變量的自動增加步長值,然后與最大值N比較,來決定是否繼續(xù)執(zhí)行循環(huán)體內(nèi)的語句。
循環(huán)語句也是可以嵌套使用的。無論分支結(jié)構(gòu)還是循環(huán)結(jié)構(gòu)的控制語句,都會打亂原先執(zhí)行的語句順序,從而給理解和維護(hù)代碼帶來困難,因此要恰當(dāng)利用這些結(jié)構(gòu)控制語句,并加上相關(guān)注釋,以防代碼出現(xiàn)錯誤或今后理解困難。
還有一條語句,稱為無條件轉(zhuǎn)移控制語句,即GOTO 轉(zhuǎn)移地址名稱,這條語句可以方便編程人員在無法確知轉(zhuǎn)移條件和難于控制時將程序執(zhí)行順序強(qiáng)制轉(zhuǎn)移到指定的地址。由于是無條件轉(zhuǎn)移,這種情況中存在著編程人員的主管隨意性,因此必須加上必要的注釋,并盡量少用,以避免今后程序理解和維護(hù)的困難。
上一篇:樹形目錄控件如何添加
安卓版本:8.7.50 蘋果版本:8.7.50
開發(fā)者:北京正保會計科技有限公司
應(yīng)用涉及權(quán)限:查看權(quán)限>
APP隱私政策:查看政策>
HD版本上線:點擊下載>
官方公眾號
微信掃一掃
官方視頻號
微信掃一掃
官方抖音號
抖音掃一掃
Copyright © 2000 - m.galtzs.cn All Rights Reserved. 北京正保會計科技有限公司 版權(quán)所有
京B2-20200959 京ICP備20012371號-7 出版物經(jīng)營許可證 京公網(wǎng)安備 11010802044457號