1樓:金色潛鳥
for(;;) ;
按語法, for 迴圈 (初態;終態;步長) 這三部分,現在 是 (空語句
回;空語句;空語句)。
是合法的答語句。由於沒有給 終態 (即允許繼續迴圈和終止迴圈的條件), 迴圈語句於是可以 永遠繼續下去。俗稱 無限迴圈 或 死迴圈。
但通常 迴圈體內 會有 語句控制 決定 是否中止。例如for(;;) ;
for(;;) ;
當然,必要時,也可以 按組合鍵 ctrl+c, ctrl+z 之類的 中斷 程式執行。
c語言中程式如:for( ; ;);為什麼是死迴圈?
2樓:匿名使用者
for( ; ;);是一bai
個典型的簡介的死迴圈。
解釋如du下:
所謂迴圈zhi就是dao讓計算機重複執行一段內**;
迴圈的核心有兩個容部分:迴圈控制、迴圈體;
迴圈控制部分的迴圈結束條件如果永遠成立,將會導致一直迴圈,俗稱」死迴圈「;
上面的程式:最後的分號,表示迴圈體為空,是空迴圈;括號中的兩個分號之間是放迴圈結束條件的,這裡也是空,等價於迴圈條件永遠成立。
for( ; ;);的迴圈條件永遠成立,所以導致死迴圈。
3樓:莊慧月荊聰
死迴圈就來是不停的執行一
自段**,而沒有退出的條件
~~~~~比如你想要計算從1開始計算以後每個數的和,如果你設定成for(i=1;i<=100;i++){}則程式會在執行100次以後退出for迴圈,而如果設定成for(i=1;;i++){}就可以說是進入了一個死迴圈,當然這麼寫是不合法的~~~~
4樓:匿名使用者
for( a; b; c)其中b這部分是for()迴圈的結束條件 ,你那個for(; ;)沒有結束條件,當然是死迴圈...
5樓:匿名使用者
;;中間是結束條件,什麼都不寫就是一直迴圈,當然會死。
如果確實要這麼使用,在for迴圈中使用break(結束迴圈)或者return(結束當前函式),也可以讓他不死.
6樓:匿名使用者
沒有迴圈結束條件 預設為true 即一直執行
7樓:匿名使用者
for(int i=0;i<20;i++)=>確定i=0,執行迴圈語句,然後i=i+1,判斷i是否小於20,如果內為真,則執行迴圈語句,i=i+1,~~~~~~~知容道i等於20時,跳出迴圈
=>for(語句1;語句2;語句3)
語句1:確定迴圈變數
語句2:當語句2為假時,跳出迴圈
語句3:當一次迴圈將要結束時,最後執行的語句for(;;)語句2為空,則預設為恆真,無限迴圈。
8樓:匿名使用者
您好bai,for(;;);這個迴圈相當於while(1);這個語句就是du無限迴圈;zhi
在for語句當中dao,第一個是初始化資料內,第二個用於條件容判斷,第三個用於迴圈操作。
當第二預設的時候,系統會直接判定為1,相當於不初始化資料,不進行迴圈操作,條件判斷始終為真,始終進行空操作,不斷迴圈,直至宕機
9樓:傳說中的鷹王
for( ; ;); 沒有結束條件,會一直迴圈下去
10樓:
不死才怪,你有沒有c常識。
c語言初學者:為什麼這個for迴圈會是死迴圈?
11樓:匿名使用者
for(m=1;m這一句錯誤,應該是
for(m=1;m
12樓:雪之伊呂裡
你的%d是純數字 數字的多少算是完?數字是無窮大的,你的m=1,m<=n一直成立,不就是死迴圈了。小於一個無窮的數當然死循了。
個人見解,不喜勿噴,喜歡望採納,碼字不易。
13樓:老猴子不會胖
並沒有死迴圈啊 哥 可能你n取值太大
c語言 為什麼for(;;)是死迴圈?求大神解釋
14樓:碧海風雲
c語言中來for迴圈包含三個部分:初自始化、條件、遞增for (initialization; condition; afterthought)
初始化是宣告(或者賦值)任何需要的變數的動作。如果你要使用多個變數,則變數的種類要一致。條件的部分則是檢查是否離開這個迴圈,也就是讓程式碼往下執行。
如果條件判斷為假,則離開迴圈。遞增在每跑一次迴圈都會重複執行一次。
for(;;),這個語句中缺少迴圈終止的條件,自然就是死迴圈了
c語言中死迴圈怎麼解決?
15樓:一籃子陽春白雪
c語言中死循bai環怎麼解決?
du首先應該將對應的
zhi退出條件置為恆為真,然dao後按照「while迴圈」專「屬for迴圈 」「do-while迴圈」三個迴圈模式分別描述。
在這個過程中,還要注意管理好迴圈控制變數,使while 的條件有機會為false,或在迴圈體中加入break,並使它有機會執行。
另外,也可以設定迴圈計數變數。為了防止程式出現死迴圈,最好是自習檢查程式,保證邏輯正確。如果不放心的話,可以設定迴圈計數變數,嵌入迴圈,當溢位上限時停止程式並報錯。
需要說明的是,死迴圈儘量少用。如果一定要用死迴圈,也要在迴圈體內設定退出條件(break)。
c語言中的死迴圈是什麼意思?
16樓:匿名使用者
就是迴圈條件總是滿足,無法退出迴圈啊
比如最簡單的:
while(1);
有時候不注意就容易引起這種情況:
int i=0;
while(i<10)
17樓:匿名使用者
死迴圈就是這樣的
int x=0;
while(x==0)
也就是說沒有關鍵性的結束迴圈的語句,導致沒有終止的執行迴圈體裡面的程式段,就是死迴圈
18樓:匿名使用者
沒有迴圈終止條件,或者說迴圈終止條件是不可能達到的。
想當初,學校機房裡有不少電腦死於我的死迴圈下啊。
19樓:牛一家
就是一直迴圈下去,程式一直在執行迴圈,不會退出。
20樓:理智之神
沒有盡頭的迴圈,約等於宕機
21樓:匿名使用者
for (i=0;;i++)
這種情況下i不斷自增,就形成死迴圈了
c語言無限迴圈 死迴圈區別...
22樓:匿名使用者
無限迴圈不就是死迴圈麼
k=1不是k==1,它是一個賦值語句而不是比較語句,返回的值為1,所以會一直執行下去。
23樓:千鋒教育
無限迴圈與死迴圈沒有本質的區別,只是不一樣的說法而已。
常見的無限迴圈有一下幾種實現方式:
1、for(; ;) {}
2、while(1) {}
24樓:匿名使用者
無限迴圈可能是程式需要故意為之,如while(1);
死迴圈可能是程式設計的邏輯錯誤,使得程式未按照預想的那樣執行。
25樓:匿名使用者
這是因為while括號裡面的條件是k=1 而不是k==1,k=1是個賦值語句,永遠返回真。
26樓:匿名使用者
無限迴圈就是死迴圈,while(條件控制),因為k=1恆為真,所以是無限迴圈
c語言中什麼叫死迴圈?怎麼避免,C語言中什麼叫死迴圈?怎麼避免?
就是迴圈條件總是滿足,無法退出迴圈啊 比如最簡單的 while 1 有時候不注意就容易引起這種情況 int i 0 while i 10 死迴圈就是這樣的 int x 0 while x 0 也就是說沒有關鍵性的結束迴圈的語句,導致沒有終止的執行迴圈體裡面的程式段,就是死迴圈 沒有迴圈終止條件,或者...
c語言goto語句死迴圈,goto語句是迴圈語句 會死迴圈 嗎?
當執行到goto num 程式就會跳轉回到num printf a 然後又繼續向下執行,如此反覆迴圈下去 你的for迴圈每次初始i 0 然後進來goto num,這樣每次for迴圈中的判斷i都是0 10,所以就是死迴圈。所以說一定要把判斷條件的初始化放在迴圈開始之前。此處應該把i 0的賦值放在num...
c語言用迴圈輸出字母,C語言用迴圈輸出26個字母
include void main if i 7 6 是i對7求佘數,如果i 14,則佘為0,i 8 則佘為1 include int main return 0 ddddddddddddddddddd 用c語言迴圈語句輸出26個大寫及小寫字母 可以參考下面的 include int main 擴充...