1. 程式人生 > >C語言基礎教學——迴圈結構之for迴圈(第四課)

C語言基礎教學——迴圈結構之for迴圈(第四課)

C語言中的迴圈結構分為三類:
1、for()迴圈
2、while()迴圈
3、do while()迴圈
何為迴圈:程式自動重複某幾個語句

1、for()迴圈,最常用的迴圈
語法結構:

for(語句1;語句2;語句3){
    迴圈體
}

語句1:初值表示式,用於在迴圈開始前為迴圈變數賦初值
語句2:迴圈控制邏輯表示式,它控制迴圈執行的條件,決定迴圈的次數
語句3:迴圈控制變數修改表示式,它使for迴圈趨向結束
迴圈體:需要重複執行的語句
例程:

#include<stdio.h>
int main(){
   for(int i=0;i<10;i++){
       printf
("%d\n",i); } return 0; }

語句1: int i=0;
(僅進入迴圈體時執行,同一個迴圈週期僅執行一次)
語句2:i<10; //判斷語句,當條件成立時執行迴圈體
(當程式進入迴圈時,i=0,此時緊接著執行語句2,發現語句2成立,那麼程式開始執行迴圈體)
語句3:i++;
(第一次迴圈體執行完成後,程式自動執行語句3,執行語句3後自動再去判斷語句2是否成立,如果成立則再執行迴圈體,以此類推)
迴圈體:printf(“%d\n”,i);
程式解釋:迴圈輸出變數i的值
執行結果:
這裡寫圖片描述
for迴圈還有以下幾種書寫方式:

#include<stdio.h>
int main(){ int i=0; for(;i<10;i++){ printf("%d\n",i); } return 0; }

*初始化迴圈變數可以在for迴圈外實現,執行結果同上

#include<stdio.h>
int main(){
   int i=0;
   for(;i<10;){
       printf("%d\n",i);
       i++;
   }
   return 0;
}

*賦值迴圈變數可以在迴圈體內實現,執行結果同上

#include<stdio.h>
int main(){
   int
i=0; for(;;){ printf("%d\n",i); i++; } return 0; }

語句1、2、3都可以為空,給大家留個問題,迴圈體可以為空麼?
我們來看一下這個程式的執行結果:
這裡寫圖片描述
這裡寫圖片描述
這裡寫圖片描述
程式沒有執行完,你會發現變數i一直在自加,直到 溢位(百度一下),因為沒有了迴圈條件的限制,迴圈體會一直執行,直到沾滿記憶體,用盡系統資源,此時你的電腦就會出現傳說中的宕機了。
*所以你的電腦平時出現卡頓的時候就是因為系統資源耗盡,如果經常卡頓可能就是提示你要升級電腦配置了