關於c語言迴圈的問題

時間 2022-03-31 10:05:02

1樓:一個不願透露姓名的朋友

第二條語句是錯誤的。

格式為for(...;....;....)我不知道你說的是**,k=1?有2個k的賦值語句。

首先來看看你的第一個迴圈.

int k=10;

while(k = 0) /* 迴圈條件為false */k = k-1; /*這條語句永遠不會執行*/來看看第二條迴圈

for(i = 0), /*書寫有問題,中文括號*/for(i=0),k=-1;k=1;i++,k++) /*有一個括號沒有結束*/

我幫你改成:

for(i = 0,k = -1;k = 1;i ++,k ++)printf....

首先,以i = 0,k = -1開始

條件成立嗎? k = 1;成立,真

遞迴語句 i++,k++

你想想,每次到條件這裡的時候,都是成立的,這不是無限迴圈是什麼?

標準的死迴圈是這樣寫的:

while(1) .....

for(..; ;..)... /*條件為空*/do...

while(1);

這些都是死迴圈,估計是你沒看仔細。希望滿意。

2樓:你名字真好

k = 0 和 k = 1 都是表示式啊

while(k = 0) 相當於while(0)while(k = 1) 相當於while(1)while(k = 2) 相當於while(2)while(k = 1 + 2) 相當於while(3)while(x = k = 1 + 2) 相當於while(3)int a = k = 1; //此時a和k的值都是1int b = k = 0; //此時b和k的值都是0int c,d;

c = d = k = 1; //此時c d k都是1c = d = k + 1; //此時c d等於2,k1

3樓:匿名使用者

void f(void)

補:是的,是死迴圈。

4樓:絕殺狂龍

我擦,第一個很簡單的賦值語句 while(k=0) 這裡是將數值0賦給變數k,然後while判斷裡面就是 0,0就是false所以不執行迴圈

5樓:

第一個,因為while裡執行的是賦值語句k=0所以k=0,判斷k的值為0,及假。。退出迴圈。

第二個,編譯錯誤,腦補為:for(i=0,k=-1;k=1;i++,k++) 迴圈條件k=1.不是一樣的道理嘛。

6樓:匿名使用者

是的,如果中間改為k=0,那麼這個迴圈永遠不會執行,因為這是賦值語句,它的條件值就是(k ==0 ? 0:1)

7樓:匿名使用者

= ==無意義 以後k == 0; 直接把0 寫前面 0 == k; 少個等號 編譯器會報錯

8樓:匿名使用者

前面兩個問題你說的都是對的 k=1;表示式的值永遠為真 所以是無限迴圈

9樓:櫻花祭季

第一個k是10,不等於0,所以不滿足while條件,不會執行while迴圈語句

10樓:允若南

for() while() do while 迴圈語句

11樓:匿名使用者

首先,你**打錯了吧

條件語句是賦值,永遠為真(不準確)

應該說除了賦值為0,永遠為真,0就是永遠為假

12樓:

i=0 是真 所以會無限次迴圈

13樓:宿星之子

第一個定義了k的值為10,只有當while(k=10)是無限迴圈,其餘是0迴圈!

14樓:匿名使用者

第一個k=0,則條件假,則無法迴圈。一次迴圈都沒有進行!

15樓:匿名使用者

=是賦值,==是關係「等於」。

16樓:匿名使用者

關注。。。。。。。。。。。。。。

17樓:匿名使用者

對如果是k=1 無限迴圈

關於C語言迴圈比較的問題

while fscanf fc,s fwj eof if strcmp a2,fwj 0 語句1elseif a8只要加一個else就行,語句1和語句2就會選擇執行。再幫你多加了幾對括號,這可能是一個形式程式,並不是完整程式。你這麼寫 肯定是順序執行 你所謂的2 語句 在 while的迴圈語句中 肯...

關於for迴圈語句後的分號問題,在C語言中,for語句的後面加分號和不加分號有何不同,該分號有什麼作用?

可愛的小知道 for 表示式1 表示式2 表示式3 語句 執行過程如下 1 先求解表示式1。2 求解表示式2,若其值為真,則執行for語句中指定的內嵌語句,然後執行下面第3 步 若其值為假,則結束迴圈,轉到第5 步。3 求解表示式3。4 轉回上面第2 步繼續執行。5 迴圈結束,執行for語句下面的一...

c語言 for迴圈巢狀,c語言的for迴圈巢狀怎麼執行的?

迴圈的過程是先執行第一個大迴圈for i 0 i 3 i 此句中先給i賦值0,在判斷條件i 3是否成立賦值後的i 0了,所以條件成立,成立則做下面一條語句,就是for j 0 j 4 j 同樣這個迴圈還是先賦值j 0,在進行判斷j 4是否成立,成立就再做下一句。此時scanf語句後面已經沒有語句了,...