c語言中while和dowhile迴圈的主要區別是

時間 2021-09-05 20:04:53

1樓:問明

1、迴圈結構的表示式不同:

while迴圈結構的表示式為:while(表示式){迴圈體}。

do-while迴圈結構表示式為:do{迴圈體;}while(條件表達);。

2、執行末尾迴圈體的順序不同

while迴圈的末尾迴圈體也是在中間迴圈體裡,並在中間迴圈體中執行,迴圈體是否繼續執行的條件也在迴圈體中。

do-while迴圈是在中間迴圈體中加入末尾迴圈體,並在執行中間迴圈體時執行末尾迴圈體,迴圈體是否繼續執行的條件在末尾迴圈體裡。

舉例如下:

while(0)

{printf("執行迴圈體。");

do{printf("執行迴圈體");

}while(0);

前者先判斷一次條件是否滿足,不滿足所以不執行下面的迴圈體,迴圈體沒有被執行;

後者先執行一次迴圈體,再判斷條件是否滿足,不滿足所以不再執行迴圈體,迴圈體執行了一次。

這種區別只有在條件在第一次判斷就為"0"(假)時才體現出來,若第一次條件判斷為非"0"(真),則沒有這種區別。

3、執行次數不同

while迴圈是先判斷後執行,如果判斷條件不成立可以不執行中間迴圈體。

do-while迴圈是先執行後判斷,執行次數至少為一次,執行一次後判斷條件是否成立,如果不成立跳出迴圈,成立則繼續執行迴圈體。

4、執行時判斷方式不同

while迴圈執行時只有當滿足條件時才會進入迴圈,進入迴圈後,執行完迴圈體內全部語句至當條件不滿足時,再跳出迴圈。

do-while迴圈將先執行一次,在經過第一次do迴圈後,執行完一次後檢查條件表示式的值是否成立,其值為不成立時而會退出迴圈。

2樓:寫在楓葉上的故事

c語言中while和do–while迴圈的主要區別如下:

1、迴圈結構的表示式不同

while迴圈結構的表示式為:while(表示式)。

do-while迴圈結構表示式為:dowhile (條件表達);。

2、執行時判斷方式不同

while迴圈執行時只有當滿足條件時才會進入迴圈,進入迴圈後,執行完迴圈體內全部語句至當條件不滿足時,再跳出迴圈。

do-while迴圈將先執行一次,在經過第一次do迴圈後,執行完一次後檢查條件表示式的值是否成立,其值為不成立時而會退出迴圈。

3、執行次數不同

while迴圈是先判斷後執行,如果判斷條件不成立可以不執行中間迴圈體。

do-while迴圈是先執行後判斷,執行次數至少為一次,執行一次後判斷條件是否成立,如果不成立跳出迴圈,成立則繼續執行迴圈體。

4、執行末尾迴圈體的順序不同

while迴圈的末尾迴圈體也是在中間迴圈體裡,並在中間迴圈體中執行,迴圈體是否繼續執行的條件也在迴圈體中。

do-while迴圈是在中間迴圈體中加入末尾迴圈體,並在執行中間迴圈體時執行末尾迴圈體,迴圈體是否繼續執行的條件在末尾迴圈體裡。

3樓:匿名使用者

答案應該是b吧。

do while的時候會先執行迴圈體一次,再判斷條件

而while是先判斷條件,條件不成立,不會執行迴圈體。

4樓:小樓微醉

while在執行第一次之前會檢查條件,不滿足則不會執行,而do while 在執行第一次之前則不會檢查條件,至少會執行一次

5樓:

do-while迴圈體語句只能是一條語句

6樓:匿名使用者

答案必然是b。while與do……while的區別體現在判斷條件在第一次判斷時就為"0"(假)的情況,若第一次判斷不為"0"(假),則這兩者完全一樣。舉例如下:

while(0)

dowhile(0);

前者先判斷一次條件是否滿足,不滿足所以不執行下面的迴圈體,迴圈體沒有被執行;

後者先執行一次迴圈體,再判斷條件是否滿足,不滿足所以不再執行迴圈體,迴圈體執行了一次。

這種區別只有在條件在第一次判斷就為"0"(假)時才體現出來,若第一次條件判斷為非"0"(真),則沒有這種區別。

因此答案必然是b。

7樓:開發者分享

do while 多執行一次

6、 c語言中while 和do-while 迴圈的主要區別是( )。 a) do-while的迴圈體至少無條件執行一次 b) while 的

8樓:匿名使用者

主要先判斷

copy還是先迴圈的區別。

while迴圈是先判斷,再決定是否執行迴圈體;

do while 是先執行一遍迴圈體,再

去判斷是否進行下次迴圈。

假設二者的判斷條件都是第一次就不滿足,那麼while語句就根本不會執行迴圈體中的語句,而do while則會執行一次。

9樓:匿名使用者

while先判斷後迴圈do -while先迴圈後判斷

10樓:匿名使用者

lz是要選擇答案,還是回答問題呀。其實這兩者的主要區別就在於,do-while不論滿不滿足條件都會執行一次,但是while是要先和條件對比,滿足了才可以執行。

11樓:統一聚慶

while語句

的來一般形式如下源

:while(表示式)語句

表示式為非0值,執行while中內嵌語句。

它是先判斷表示式,在根據表示式值,執行語句。

do_while語句的一般形式如下:

do迴圈體語句

while(表示式);

它的特點是先執行迴圈體語句,然後判斷迴圈條件是否成立,不成立就退出,成立就再執行迴圈體語句。

12樓:浮沫已平

題目不完全,解決不了問題

c語言中while和do–while迴圈的主要區別是什麼?

13樓:楓璽

1、迴圈結

構的表示式不同

while迴圈結構的表示式為:while(表示式)。

do-while迴圈結構表示式為:dowhile (條件表達);。

2、執行時判斷方式不同

while迴圈執行時只有當滿足條件時才會進入迴圈,進入迴圈後,執行完迴圈體內全部語句至當條件不滿足時,再跳出迴圈。

do-while迴圈將先執行一次,在經過第一次do迴圈後,執行完一次後檢查條件表示式的值是否成立,其值為不成立時而會退出迴圈。

3、執行次數不同

while迴圈是先判斷後執行,如果判斷條件不成立可以不執行中間迴圈體。

do-while迴圈是先執行後判斷,執行次數至少為一次,執行一次後判斷條件是否成立,如果不成立跳出迴圈,成立則繼續執行迴圈體。

4、執行末尾迴圈體的順序不同

while迴圈的末尾迴圈體也是在中間迴圈體裡,並在中間迴圈體中執行,迴圈體是否繼續執行的條件也在迴圈體中。

do-while迴圈是在中間迴圈體中加入末尾迴圈體,並在執行中間迴圈體時執行末尾迴圈體,迴圈體是否繼續執行的條件在末尾迴圈體裡。

14樓:育知同創教育

1、語法不同:

while語法為:

while (條件)

do-while語法為:

dowhile(條件)

2、執行次數不同:

do while先執行迴圈,然後在判斷迴圈條件,而while迴圈先判斷再執行迴圈體,如果條件不滿足就不會進入迴圈體。

15樓:匿名使用者

用while語句實現迴圈:

16樓:匿名使用者

while語句

的一般形式如下:

while(表示式)語句

表示式為非0值,執行while中內嵌語句.

它是先判斷表示式,在根據表示式值,執行語句.

do_while語句的一般形式如下:

do迴圈體語句

while(表示式);

它的特點是先執行迴圈體語句,然後判斷迴圈條件是否成立,不成立就退出,成立就再執行迴圈體語句.

17樓:忘了所有沒有痛

他們的主要區別就是,前者必須滿足條件才可以執行迴圈,後者的特點是無論如何迴圈都能執行一次。

18樓:木乞翟

while是需要先判斷條件是不是滿足,滿足才執行while內容。

do-while是首先做一次while的內容然後判斷是否滿足,不滿足跳出,滿足繼續做。

c語言中while和do-while迴圈的主要區別是什麼?

19樓:匿名使用者

while語句的一般形式如下:

while(表示式)語句

表示式為非0值,執行while中內嵌語句。

它是先判斷表示式,在根據表示式值,執行語句。

do_while語句的一般形式如下:

do迴圈體語句

while(表示式);

它的特點是先執行迴圈體語句,然後判斷迴圈條件是否成立,不成立就退出,成立就再執行迴圈體語句。

20樓:

while是先判斷條件在執行;

do-while管他三七二十一,先執行一次do語句,在判斷條件在執行;

21樓:

有些時候我們的迴圈條件需要先做一次迴圈內容才知道,這時就可以用do{} while();

22樓:法心張暎

區別是:

while只有條件成立才執行迴圈體

dowhile無論條件成立與否,都至少要執行一次迴圈體!

while 的用法 c語言,c語言中while的用法

1024程式設計師 c語言迴圈結構之while迴圈語句 while 表示式 就是當 表示式的則為非零時,執行迴圈體內的語句!你的程式相當於 int jsvalue long n if s n return 1 if s n return 0 k是long int型別,所以k不能為小數 輸入n迴圈開始...

C語言怎麼退出while迴圈,c語言中while的用法

不不見不念 if條件語句寫錯了 if a 判斷字串相等不能用等號 if strcmp a,0 要這麼寫 while 是乙個迴圈體,退出迴圈體的方法有 1 迴圈體條件 不成立,如 while a 0 當 a 0 的時候,條件 a 0不成立,while 迴圈結束,退出 while 迴圈。2 在迴圈體內使...

C語言中,關於while迴圈的問題

include int main int argc,char argv 我在解釋一下,昨天沒說清楚。就算你只輸入了乙個a,這個時候scanf掃瞄緩衝區,發現不是整形,所以直接退出,指標仍舊指在a的位置,下次scanf呼叫的時候,指標仍舊指在a這裡,所以scanf不等待你輸入,但是a不是整數,又直接退...