• »
  • C/C++
  • 程式語言
  • » 如何使用C語言for迴圈,寫屬於你的愛情無限迴圈 C語言學習筆記【4】
    上一篇:

    如何使用C語言for迴圈,寫屬於你的愛情無限迴圈 C語言學習筆記【4】

    迴圈這概念說起來簡單又有點複雜,說起來複雜卻又沒那麼難。簡單來說 : 在C語言裡,迴圈是為了讓指定的程式,在條件符合下一直執行,直到程式結束。所一我們要寫的就是,在什麼條件下,程式就會永無止盡的跑,直到「傳回值」不在限制的條件內,則結束迴圈,繼續向下執行其他副程式。

    在C語言裡,有迴圈概念如 : for()、while()、do()…等,每種語法都有他適用的範圍,我們今天先來介紹for迴圈,學習使用指定的條件式,進而判斷是否執行迴圈本體。並不是所有的迴圈都是無限(窮)迴圈,只有在指定直恆在條件式中成立,迴圈才會繼續執行下去,否則結束迴圈。例如條件是規定: i<5時程式繼續執行,因此當傳回i=6時,則i不符合條件(6≮5),因此結束迴圈。

    接下來我們用範例來說明,那就選愛情好了,在一個穩定的感情中,日子(Day)的流逝,會不減愛情的溫度^^。為什麼要舉這個例子呢?因為我找不比必這更適合用來說明的例子了。

    C語言學習筆記-系列文章

    如何使用C語言for迴圈,寫屬於你的愛情無限迴圈

    當「時間>0∧愛<3,則會一直下去」,用數學來說應該就是(∀love,time ∃!time>0∧love<3∋time+1)。好像有點無聊,直接來看C語言怎麼寫。

    第1步 今天我們先不輸入變數,純粹寫C語言,然後輸出一個迴圈,就些上我們看看迴圈的寫法吧。

    #include<stdio.h>  //載入標頭檔
    #include<stdlib.h>
    #include <windows.h>
    int main(void){
    	int love,time; //定義整數變數
    		for(time=1;time>0;time++){  //當時間(time)>0時,程式繼續執行
    			for(love=2;love<3;love++){  // 當愛情(love)<3時,程式繼續執行,若love>=3時跳出迴圈
    				printf("I Love You.\t Day %d\n",time);
    				Sleep(500);  //程式短暫停留
    			} 
    		}
    	printf("If you see this sentence, I have been dead.\n");  
      //迴圈結束,顯示的訊息,而當然這段訊息是不會顯示的,因為上面是一個無限迴圈。
    
    	system("PAUSE");
    	return 0;
    }

    程式說明 :

    • 首先是載入標頭檔,一樣是常用的兩個stdio.h和stdlib.h,以及另外一個windows.h,這個主要是為了讓程式短暫歇息、停留(Sleep)。
    • 定義兩個整數變數love、time。
    • 這程式總共會有兩個迴圈,其實第二個迴圈沒什麼意義(是指在這邊),純粹增加與程式的感情
    • 先來看看第一個for迴圈,for (time=1;time>0;time++),在for迴圈中,我們利用()來把條件放進去,其中他們分別為(變數的起始值 ; 執行的條件 ; 執行完後變數的處理),所以上述條件式中的意思為,1先定義時間(time)為1,則當符合條件[time大於0]時,變執行{}中的程式內容,而當指定程式執行完後,我們把time加1(++或+1)。因此想當然,這個迴圈是永無止盡的,因為time永遠大於零。
    • 再來是迴圈裡的迴圈,for(love=2;love<3;love++),定義love為2,因為愛情是兩人世界^^,而當條件(love<3)時,執行迴圈一次,指定程式完成後,把love加1,所以我們會發現,這個時候love=3,已經不符合條件內容了,所以這個迴圈結束執行。
    • 但是因為在內部迴圈結束後,外部迴圈的數值仍符合條件式,因此又再重步執行一次,所以內部迴圈又被重新定義love=2,而當條件(love<3)時,執行迴圈一次,指定程式完成後,把love加1,然後不符合條件,結束迴圈,這個周而復始的設定就構成了我們的無限(窮)迴圈
    • 而內部迴圈裡面就是每執行一次迴圈要輸出的文字,所以我們用printf()來輸出。
    • 而為了不讓迴圈跑太快,所以我們用Sleep()來暫時停止程式,()內的數值為毫秒,S要大寫。

    如何使用C語言for迴圈,寫屬於你的愛情無限迴圈 C語言學習筆記【4】-01

    第2步 這就是輸出結果,日期會一直變,然後一直跑下去。

    如何使用C語言for迴圈,寫屬於你的愛情無限迴圈 C語言學習筆記【4】-02

    Advertisement
    Follow US
    About Post
    Date: 2013.04.27 Tags: , , , , , , , ,
    Discussion

    Leave a Reply