C語言 第九章 流程控制

2021-09-27 03:40:54 字數 2653 閱讀 6759

//前言

1,預設執行流程:按書寫順序執行**。

2,其它執行流程:註冊介面 條件執行。

3,流程式控制結構:3種,

順序結構:按書寫順序執行每一段**。

選擇結構:對給定的條件進行判斷,根據判斷結果選擇執行。

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

//一,順序結構

//二選擇結構

c語言的選擇結構有兩種:if語句 和 switch語句。

1,if語句

1,形式

if(條件)

條件成立時執行中的語句,不成立不執行

2,if後面只有一行**時可以省略 //不建議

if語句1;

3,語句巢狀

int a = 7;

if (a>0)

} 4,使用注意

if(條件)//後面沒有分號

判斷條件位0是:最好寫成0==a

if(a==0)

2,形式二:if與else連用

1,if(條件)

else

2,eg: int a = 10;

if(a==0)

else

3,if-else 複雜形式

if(條件1)

else if(條件2)

else if(條件3)

...else

以上的**中,只有1個{}中的**會被執行

eg: int a = 10;

if(a==0)

else if(a>0)

else

//三,選擇結構2-switch

1,形式:

switch(整型表示式)

2 舉例:

int a = 10;

switch (a)

執行後a的結果為10

3,break

1,作用:退出整個switch語句,如果沒有,**會執行到有時才推出switch

2,判斷分數的優良中差時,每個case後面沒必要新增break

int score = 77;

switch(score/10)

4,在case中定義變數

1,在case中定義一些變數,必須用{} 括住case中的所有語句。

int a = 10;

int b = 4;

char op = '-';

switch(op)

case '-':

default:

printf("不能識別的字元");

break;

}

//四,迴圈結構1-while

1,作用;重複執行某個操作時,首先考慮迴圈結構。

1,形式:

while(條件)

條件成立執行{}迴圈體中的語句,然後再次判斷。

直到條件不成立 時結束while迴圈。

while迴圈特點:如果while中的條件一開始就不成立,

那麼迴圈體中的語句永遠不會執行。

不建議省略{}。

2,舉例;螢幕上重複輸出10次hello word

int count = 0;

while(count < 10)//沒 有 分號,有會造成死迴圈

//五,迴圈結構2-do while迴圈

1,形式:

do while(條件);//不要忘記分號;

首先執行一遍迴圈體中的語句,

判斷while中的條件

條件成立則執行迴圈體中的語句

然後再次判斷

重複執行

特點:不論while中的條件是否成立,迴圈體中語句至少會被執行一遍

//六,迴圈結構3-for迴圈

1,形式:

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

for迴圈開始時先執行語句1,且整個迴圈過程中只執行一次語句1.

接著判斷條件,條件成立,執行迴圈體{}中的語句。

迴圈體執行完畢後,接下來執行語句2,,然後再次判斷條件,重複上述過程。

直到條件不成立就結束for迴圈

2,舉例

for (int = 0;i<5;i++)

; }

變數的作用域為當前的for{}

3,補充

初始化語句和迴圈一次後執行的語句由多條語句組成時,用逗號,隔開

for(int x = 0,y = 0;x<3;x++,y+=2)

//七,break 和 continue

1,break

跳出switch語句/在迴圈結構中跳出整個迴圈

1,舉例

for(int i = 0;i<5;i++)

} i>2時跳出for迴圈

2,for迴圈巢狀

for(int x = 0;x<2;x++)

} break 只會影響它所在的那個for迴圈

2,continue

continue只能使用在for迴圈結構中,

他的作用是跳過這一次迴圈,直接進入下一次迴圈

for (int x =0;x<10;x++)

printf("x=%d \n",x);

} continue只會影響它所在的那個for迴圈

c 基礎 (第九章)

結構體型別說明 struct 結構體識別符號 成員變數列表 如果沒有結構體識別符號,則稱為無名結構體型別 引用結構體變數成員 l 結構體變數名.成員名 l 結構體指標名 成員名 l 結構體指標名 成員名 共用體共用體所有變數共用一塊記憶體 定義格式如下 union 共用體識別符號 成員變數列表 列舉...

第九章(筆記)

轉移指令是可以修改ip,或同時修改cs和ip的指令 offset 是用於提取標號偏移位址的操作符 jmp在第2章裡說到時用於修改ip或同時修改cs和ip的轉移指令,這章裡單獨的jmp指令是乙個無條件的轉移指令 jmp short 標號 是實現段內短轉移 jmp near ptr 標號 是實現段內近轉...

第九章作業

班級 0401304 學號 2013211526 姓名 鄧小俊 2.身份驗證 依據使用者所提供的身份資訊,來進行登入驗證,可以再細分為使用者是否可以登入sql sever 使用者是否可以登入到指定的目標資料庫等。授權 已通過身份驗證的使用者,檢查其所被賦予的許可權,是否可以訪問或者執行目標的物件 3...