孫明英

摘 要:本文就程序設計中循環結構的原理進行了剖析,特別對于死循環及循環語句結合條件語句的應用進行原理性的推理。
關鍵詞:循環過程 死循環
在我們處理問題的過程中,常常會遇到這樣一些情況:對于某類問題,處理的方法和步驟完全一樣,只是要求重復執行多次,并且每次使用的數據按照一定的規律在變化,這就是一個循環過程。
循環結構的流程圖如下:
循環結構流程圖所表示的含義是:當滿足條件時,不斷執行A框。一旦條件不滿足時,就不再執行A框,結束本基本結構,而執行它下面的結構。
不論是循環次數已知的情況,還是循環次數未知的情況,都存在一個循環變量來控制循環次數,而由這個循環變量的變化來改變循環條件,使得程序能正常退出循環。用循環語句編程時,最忌諱的是程序陷入死循環而不能正常結束。
死循環是在循環過程中,循環變量的值不會發生變化,此時的循環永不停止的一種情況。導致死循環的原因有很多,最根本的是循環變量沒有發生變化或重復在一定范圍內變化而使得程序不能達到循環結束的條件,而不一定非得是循環變量為零。如在BASIC語言程序中的如下程序段即是這樣(BASIC語言程序是按行號順序執行的)。
10 for i=1 to 5 step 0.5
20 i=int(i+0.5)*0.5)
30 print i
40 next i
在使用循環編程的過程中,我們也常忌諱通過條件語句從循環體外轉向循環體外,因為正常的規則是:可以從循環體內通過條件語句轉向循環體外。但在研究這些問題時,我們不能只注重形式,應該去剖析它的原理。如在BASIC語言中有如下程序段:
10 for i=1 to 10
20 if i<8 then 50
30 print i
40 next i
50 print i*2
60 goto 40
這段程序依然能夠正常運行,原因是:雖然形式上看似乎是從循環體外轉向循環體內,但從原理上分析可知當循環變量的值小于8時,輸出其值的2倍,相反則輸出其本身。在該程序段中每一次循環變量的值發生改變,相應的都能找到對應的輸出語句,并及時返回到循環終端語句,沒有違反循環語句的使用規則,所以能正常運行。
不論是在BASIC語言中,還是在其他編程語言中,編程原理都是一樣的。在程序設計語言中,循環結構是一個重要組成部分,尤其在這一塊,很多題型,大量練習都分布在這兒。在指導學生編程的過程中,除了引導學生對不同的題型運用不同的方法進行分析外,重點讓學生掌握循環結構中循環語句的格式及其使用原理,這樣才能使學生以不變應萬變,融會貫通,從而提高學生的程序設計方面的應用和創新能力。
參考文獻:《BASIC語言程序設計》.電子工業出版社出版
作者單位:河北省陽原縣職教中心