1. 程式人生 > >C語言(迴圈結構)

C語言(迴圈結構)

迴圈結構

使用迴圈結構的步驟一般分三步:

  1. 初始化迴圈條件,常見的手段是通過一個變數來控制迴圈,那麼第一步就應該給這個變數賦初值。
  2. 編寫迴圈結構要執行的操作,其中必須要有一步是改變迴圈條件,最終讓迴圈條件不成立,比如增加變數使其超越臨界值。
  3. 檢查迴圈條件是否符合成立,以便在某個時該跳出迴圈。不能跳出的迴圈稱為死迴圈,死迴圈會嚴重佔用CPU 的時間片資源,除非有意為之,否則程式設計中應該儘量避免。

while 與do-while 迴圈

  1. while(迴圈條件)
    {
    語句塊;
    }

  2. do
    {
    語句塊;
    }while(迴圈條件);
    (後面有分號)

    • 迴圈正常結束的條件是,括號裡面的計算結果為0(包括數值0,空間指標NULL,函式返回值為0)。
    • do-while 迴圈與while 迴圈的區別是,do-while 的迴圈體語句至少會被執行一次,而while 迴圈的語句則有可能一次都不執行。

for 迴圈

  • for(表示式1;表示式2;表示式3)
    {
    語句塊;
    }

  • 在C99 標準中,可以在for 語句的三個表示式中定義並初始化變數。
    for(int i = 0; i < 100; i++)
    {
    //語句塊;
    }

break 與continue

break

程式在遇到break 語句後,將自動跳出本迴圈,break 只能結束一層迴圈,多層的迴圈需要通過多個break 才可以完全跳出。

continue

continue 只用於結束本輪迴圈,如果迴圈條件符合,則迴圈還會繼續下去。

goto 語句

使用goto 語句可以在程式中進行無條件地跳轉。

  • goto 語句的格式如下:

    語句標號:

    goto 語句標號;

  • 任何一本關於C 語言的書上都會提到,使用goto 語句會破壞C 程式的結構,不主張使用goto 語句。

符號常量

  • 可以通過#define 定義符號常量,方法如下:
#define 常量名稱 值
  • #define 後面不需要加分號,因為它是預編譯指令,不是C 語言的語句。一般程式在正式編譯之前,會由前處理器對原始碼進行預處理操作,操作的物件就是以#開頭的預處理指令。
  • 類似於#define 這樣的指令執行的是巨集替換操作。

轉義字元

  • 轉義字元:用於表示無法輸入的字元或不可見的字元。形式:“\”後面跟一個字元或數字。

    1. \n 換行,將當前位置移到下一行開頭
    2. \t 橫向跳格,橫向跳到下一個輸出區