C語言學習筆記 4 之迴圈結構

2021-10-17 03:20:22 字數 2448 閱讀 7386

介紹

迴圈本質上就是重複,所有需要重複執行的**都可以用迴圈來實現。

在c語言中,能夠達到迴圈效果的語句有如下:

1) if和goto語句構成的迴圈

2) while語句

3) for語句

4) do while語句

goto語句

goto語句是無條件跳轉語句,讓cpu到指定的地方去執行。

語法:goto 行標識(語句標識):

「行標識」:識別符號,用來表示某一行。

只要符合c語言識別符號的命名規則即可。

行標識一般寫在一行的最前面。允許我們行標識前面有空白符(空格 tab…)。

例子:

loop: //loop就是乙個行標識

sum = sum + i;

i += 1;

goto loop;

想上面的語句塊,就可以實現迴圈的效果,但是這是乙個死迴圈。

為了避免死迴圈的情況發生,goto語句一般和if語句配合使用。例子:

用goto語句求100以內的3的倍數之和。

while語句

語法:while(表示式)

運算規則:

先判斷表示式的值是否為0,如果為非0,則執行語句,執行完語句之後,回到while繼續

判斷表示式的值是否為非0,一直判斷,直到表示式的值為0為止,則退出while

不再判斷,且不再執行語句。

「表示式」:c語言任意合法的表示式都可以。

「語句」:while迴圈體內的語句。

是我們要重複執行的部分。

可以是單語句,也可以是復合語句。

例子:

用while語句求100以內的3的倍數之和。

用while迴圈來實現,逆序輸出乙個非零整數的各個位上的數字。

12345 ---> 54321

-567 ---> -765

辦法1:

num = 12345

while(num)

辦法2:

-12345

int new_num = 0;

while(num)

do while語句

語法:

dowhile(表示式);

運算規則:

先無條件的執行一次語句,在去判斷表示式的值,如果表示式的值為真(非0)

就再去執行語句,重複判斷執行,直到表示式的值為0,則退出迴圈。

「表示式」:c語言任意合法的表示式都可以。

「語句」:while迴圈體內的語句。

是我們要重複執行的部分。

可以是單語句,也可以是復合語句。

例子:

1. 用do while語句求100以內的3的倍數之和。

2. 用do while語句實現n!(階乘)

n! = 1*2*3*....*n;

sum = sum + i;

dowhile(i <= n);

for迴圈

語法:for(表示式1;表示式2;表示式3)

運算規則:

首次進入for迴圈先無條件執行表示式1,再去判斷表示式2的值,若值為真,則執行語句,執行完語句之後

在執行表示式3,此時乙個迴圈就結束了。從第二次迴圈開始,就不再執行表示式1了,直接判斷

表示式2的值,若值為真則繼續執行語句,否則退出for迴圈。

for迴圈完全等價於while迴圈:

表示式1;

while(表示式2)

唯一的區別在於for迴圈體中的表示式123都可以為空,其中表示式2為空表示判斷條件永遠為真,而while迴圈中的表示式2不能為空。

如:

for(;;) --> while(1) --> for(;1;)

練習:

1. 列印出1000以內的水仙花數。

153 = 1 * 1 * 1 + 5 * 5 * 5 + 3 * 3 * 3

int i;

int g,s,b;

for(i = 100;i < 1000;i++)

}

判斷乙個整數是否為乙個質數。

質數:除了1和它本身,不能被其它整數整除的數。

1.3.5.7.11…

int i;

[2,n-1]

n % i == 0

continue和break

break語句只能用在switch語句和迴圈體(while/do while/for)語句中。

(1) break用在switch中,用來跳出它所屬的switch

(2) break用在迴圈體中,用來跳出它所屬的迴圈。

continue只能用在迴圈體中,是用來提前結束此次迴圈,開始下一次迴圈。

c語言學習 4 迴圈

一 for和while等價替換 inti 1 for i i 100 i inti 1 while i 100 二 從鍵盤輸入乙個數字,如果該數字是回文數,則返回yes,否則返回no 回文數 正著寫倒著寫一樣的數 include intmain if sum val else return 0 三 ...

C語言學習筆記之迴圈結構和選擇結構

c語言迴圈結構和選擇結構詳解 if else的簡單應用 include include intmain else return0 小結 不留無用空格 按照行業規範寫 求兩數的較大者 include include intmain else printf max is d max return0 多個...

c語言學習筆記之順序,選擇,迴圈結構

程式從結構上可分為3大類 順序 選擇 迴圈。順序程式的特點是,從開始到結束,計算機按照程式邏輯的順序依次進行,每條語句只被執行一次。輸入輸出語句是其核心。1 printf函式 格式化輸出函式 printf函式的作用是向終端輸出若干個任意型別的資料。格式 printf 格式控制,輸出列表 eg pri...