C語言 2 流程控制

2021-07-02 16:55:08 字數 2382 閱讀 8029

-------

cornerfly真誠期待與您交流! ----------

一、概述

每種語言都有三大流程控制結構,c語言也不例外,流程控制分為:

*順序結構:預設的流程結構。按照書寫順序執行每一條語句。

*選擇結構:對給定的條件進行判斷,再根據判斷結果來決定執行哪一段**。

*迴圈結構:在給定條件成立的情況下,反覆執行某一段**。

二、選擇結構

1、if

1>結構

if(條件1)

else if(條件2)

……else

2> if語句中比較大小時,常量值放在左邊,變數放在右邊。例:

int a = 4;

if(0 == a)

else

2、switch

*同一時刻,只有乙個大括號裡面的**會被執行。

1>結構

switch(表示式)

3、if和switch的對比

*很多情況可以互換

*if用得比較多,比較靈活,switch只能是某個單值

三、迴圈語句

1、while

1>結構

while (條件)

2、do while

1>結構

dowhile(條件);

2>while和do while的區別:

*很多情況下,兩者可以互換

* while特點:如果一開始條件就不成立,就永遠不會執行迴圈體。

o while特點:不管條件是否成立,至少會執行一次迴圈體。

3、for

1>結構

for (語句1; 條件; 語句2)

語句1: 初始化語句

語句2: 增量語句(執行完迴圈體後在執行的語句)

4、迴圈結構的選擇

1>一般優先選擇for迴圈

2>然後在考慮while迴圈

3>最後再考慮do while

5、break和continue

*break 直接結束整個迴圈,switch語句中用於跳出switch語句

*continue跳出這次迴圈進入下一次迴圈體的執行

四、函式

1、函式定義格式

返回值型別  函式名(形式引數列表)

2、練習:求兩個整數的和

sum(int a, int b)

3、函式的宣告

若函式定義在主函式之後,主函式之前要有函式的宣告

* 如果有函式的宣告,沒有函式的定義

1>編譯可以通過,因為編譯器只會檢測語法合不合理,並不會檢測函式有沒有定義

2>鏈結報錯,因為鏈結的時候會檢測函式是否定義

4、注意點

1>預設情況下,函式名稱不能相同

2>不能巢狀定義函式

3>不能重複定義、可以重複宣告

五、include

1、 作用:拷貝右邊檔案的所有內容到#include所在的位置

2、 自定義的檔案用"",系統自帶的檔案用<>

3、 #include 的目的:拷貝printf函式的宣告

六、多檔案開發

1、 函式的定義放.c檔案,函式的宣告放在.h檔案

2、 如果要使用某個.c檔案中定義的函式,只需要#include這個.c檔案對應的.h檔案

3、 .h檔案的作用,被別人拷貝,編譯鏈結的時候不需要管.h檔案

七、轉義字元

1、\n : 換行

2、\t : tab鍵

3、\」 : 雙引號

4、printf函式返回的是字串常量的字元數,不是字數。

5、乙個字元占有乙個位元組,乙個漢字占有3個位元組

C 流程控制2

for迴圈 語法 for 表示式1 表示式2 表示式3 表示式1一般為宣告迴圈變數,記錄迴圈的次數 int i 0 表示式2一般為迴圈條件 i 10 表示式3一般為改變迴圈條件的 使迴圈條件終有一天不再成立 i 執行過程 程式首先執行表示式1,宣告了乙個迴圈變數用來記錄迴圈的次數,然後執行表示式2,...

C語言流程控制

1迴圈 for while do while while 邏輯值的表示式 先判斷再執行 迴圈體do while 邏輯值的表示式 先執行再判斷 注 1 表示式為真,繼續迴圈 表示式為假,退出迴圈 2 表示式中值是否初始化。3 結束退出 運算子 8 逗號運算子 表示式1,表示式2,表示式3,表示式n 結...

C語言流程控制

當分支語句過多時,使用if語句會提高 閱讀難度。判斷浮點數大小時需通過區間來進行,浮點數在進行儲存的時候會喪失了一定的精度,而對比浮點數大小的時候比較的是他們二進位制的數值。判斷浮點數是否等於0 define epsinon 0.0000001 int main return 0 先判斷條件再執行循...