for i 0,k 1 k 1 ikprintf是無限迴圈還是一次也不執行

2021-03-29 13:01:31 字數 3221 閱讀 3377

1樓:匿名使用者

一定是無線迴圈的,你這邊的條件k=1是一個賦值語句,永遠是對的,因此會無線迴圈下去。

當條件k=1時,是無限迴圈;

當條件k==1時,是一次也不執行。

2樓:匿名使用者

無限迴圈,迴圈的條件是  k=1,這裡是k等於1而不是k==1如果等於1.k=1返回一個k的值為1 .1為真,所以迴圈無休止

下面for 迴圈語句() int i,k; for (i=0,k=-1;k=1;i++,k++) printf("***");a判斷迴圈的條件非法

3樓:徐臨祥

推薦回答一定是無線迴圈的,你這邊的條件k=1是一個賦值語句,永遠是對的,因此會無線迴圈下去。當條件k=1時,是無限迴圈;當條件k=1時,是一次也不執行。

4樓:匿名使用者

一定是無線迴圈的,你這邊的條件k=1是一個賦值語句,永遠是對的,因此會無線迴圈下去。

當條件k=1時,是無限迴圈;

當條件k==1時,是一次也不執行。

5樓:臺三詩

a原因是:for結構中間語句是迴圈判斷條件,只有滿足條件才迴圈,這裡是k=1,這是賦值語句,而非判斷條件。

下述for迴圈語句( )。 int i,k; for(i=0,k=-1;k=1;i++,k++)

6樓:墨汁諾

b。迴圈結束條來件k=1這個賦值語源句永遠為真。

首先**有誤應該為:

for(i=0;i++;i++)

for(k=1;k<3;k++)

printf("*");

第一次執行i=0,k=1,輸出一個星號,k=2,輸出一個星號,執行i++,i++後,i=2.

第二次執行i=2,k=1,輸出一個星號,k=2,輸出一個星號,然後執行i++,i++後,i=4,不滿足條件結束迴圈。

7樓:匿名使用者

b:迴圈結束條件k=1這個賦值語句永遠為真

for(i=0,k=-1;k=1;k++) printf("******\n"); 為什麼這個語句構成了無限迴圈?

8樓:連霞禮雲

for(i=0,k=-1;

k=1;

k++)

for語句中第一個語句(i=0,k=-1;)為初始賦值語句。第二個語句(

k=1;

)為迴圈判斷語句,這裡版k=1是賦值語句,表邏權輯判斷時值為1,所以構成無限迴圈。

應該寫成k==1;

for(i=0,k=-1;k=1;i++,k++) printf(" * * * *" );該迴圈語句()。

9樓:你嘻哈

首先**有

bai誤應該為:du

for(i=0;i++;i++)

for(k=1;k<3;k++)

printf("*");

第一次執行i=0,k=1,輸出一個zhi星dao號,回k=2,輸出一個星號,然後執行i++,i++後,i=2.

第二次答執行i=2,k=1,輸出一個星號,k=2,輸出一個星號,然後執行i++,i++後,i=4,不滿足條件結束迴圈。

總結:兩個i++照樣加兩次,由於第一個for迴圈後面沒有迴圈體也沒有分號結束,所以會繼續執行下一個for迴圈,而第二個for迴圈有迴圈體,有分號,所以當i=0和i=2時會分別執行兩次每次輸出兩個星號,一共4個星號,結果如下。

設i和k都是int型別,則以下for迴圈語句: for(i=0,k=-1;k=1;i++,k++)

10樓:會飛的小兔子

無限循bai

環。定義一個for迴圈du,迴圈變數是i,但由於本題並沒zhi有設定循dao環條件,所以迴圈的條件永內遠預設為真,即容無限次執行迴圈。

for表示式

表示式1:一般為賦值表示式,給控制變數賦初值;

表示式2:關係表示式或邏輯表示式,迴圈控制條件;

表示式3:一般為賦值表示式,給控制變數增量或減量。

語句:迴圈體,當有多條語句時,必須使用複合語句。

擴充套件資料for為當型迴圈語句,它很好地體現了正確表達迴圈結構應注意的三個問題:

⑴控制變數的初始化。

⑵迴圈的條件。

⑶迴圈控制變數的更新。

11樓:匿名使用者

k=1是賦值語句,該for迴圈中沒有判斷語句,k的值總是等於1,c無限迴圈。

若有定義:int i ,k ;則for迴圈語句:for(i=0,k=-1;k=1;i++,k++);是(c)

12樓:天星旋光

第一題:i=0,k=-1是初始化i和k的值,k=1是判斷迴圈結束的條件。

因為k=1表示將1賦值給k,其結果是返回true,所以不管後面i和k怎麼變化,每次都會返回true,故迴圈無窮多次。

第二題:第一次執行迴圈時,i=0,j=1。i<=j+1成立(因為0<=2成立),所以迴圈結束後,由i+=2可知,i變成了2,由j--可知j變成了0。

執行第二次迴圈時,i<=j+1不成立(因為2<=1不成立),所以迴圈結束,故只執行了一次。

13樓:

第一題迴圈無數次是因為k=1,也就是永真,即表示式2永遠成立,如果將k=1改為k==1,則該for迴圈將迴圈0次。

第二題很簡單,第一次迴圈i=0,0<2,所以迴圈一次,接著i變為2,j變為0,因為2不小於1,所以結束for迴圈,故只迴圈一次。

有不理解可再問。。就是沒有懸賞分有點不厚道。。。呵呵

14樓:匿名使用者

第一個如果可以這麼理解的話:迴圈條件為真迴圈即進行......不知道是不是

第二個... 不能理解

若i和k都是int型別變數,有以下for語句 for(i=0,k=-1;k=1;k++) printf("*****\n");為什麼構成無限迴圈?

15樓:匿名使用者

for(i=0,k=-1; k=1; k++)for語句du中第一個語句(zhii=0,k=-1;)為初始賦值語句。第二個語句( k=1; )為迴圈判斷語句,dao這裡k=1是賦值語句,表邏輯回判斷時值為1,所答以構成無限迴圈。

應該寫成k==1;

已知關於x的方程x 2 k 1 x k 0求證無論k取何值,方程總有實數根

b 4ac k 1 4k k 6k 1 k 3 8 這個不一定大於0 你的題目是錯誤的 將題目修改成 已知關於x的方程x 2 k 1 x k 0求證無論k取何值,方程總有實數根 解 b 4ac k 1 4k k 2k 1 k 1 0 方程有兩個實數根 題目錯誤 知關於x的方程x 2 k 1 x k ...

C 中int i 1 ,sum 0for i 1 i10 isum sum i cout《i為什麼i

1 int是c 語言中基本資料型別中的整型。2 sum指的是返回某一單元格區域中的數 邏輯值及數字的文字表示式之和。3 int i 1 sum 0 即int i 1,sum 0 意思是把字母i定義為整型常量,把i賦值為1。把具有 總和 意思的英文單詞sum定義為整型常量,把sum賦值為0。4 延伸一...

有以下程式段 int k 0 while k 1 k則迴圈執行多少次?為什麼

迴圈會執行無數次,while k 1 表示式k 1是把1賦值給變數k,然後整個表示式k 1的值為1,即真,然後k自加,新的一輪迴圈開始時,k的值又變成1,即真,所以迴圈不會結束。有以下程式段 int k 0 while k 1 k 則while迴圈執行的次數是 程式段 int k 0 while k...