1樓:匿名使用者
出第一次執行表示式1之外
之後的循序是:表示式2->for語句塊(遇到continue後跳出當前迴圈)->表示式3 ->表示式2->for語句塊(遇到continue後跳出當前迴圈)->表示式3 ->表示式2……
如果執行到continue語句時是直接去執行表示式2 而不是去執行表示式3 那麼for語句就很有可能陷入死迴圈了
2樓:匿名使用者
break是中止迴圈,即跳出迴圈去執行迴圈語句的下一句;
continue 是完成本次迴圈,執行下次迴圈,即跳到for中的表示式3,然後跳到表示式2進行判斷,如此迴圈
3樓:優秀男孩
如果執行到continue語句時是直接去執行表示式2 而不是去執行表示式3 那麼for語句就很有可能陷入死迴圈了
怎樣理解:在for迴圈中,continue語句一結束,先執行每次迭代後的操作,再計算迴圈繼續條件。
4樓:
就以這個例子
for(int n=1;n<=10;n++)輸出結果就是1,2,3,4,。。。。就是continue之後會執行n++
而如果用while語句
int n=1;
while(n<=10)
結果就是1、2然後無限迴圈下去也不輸出結果,因為i=3時continue之後直接跳到n<=10而不會執行i++,結果i就永遠只能是3
關於c語言的。在for迴圈裡如果迴圈語句出現break。那麼for迴圈中表示式3還會不會執行呢??
5樓:an很圓滑
break是退出迴圈了,迴圈下面還有什麼,都不會執行了
6樓:2一瞬間
不會再執行了,直接跳出當前迴圈
7樓:廿四點半
你沒看書啊。。這麼基礎的知識。break是直接跳出迴圈,continue是跳出當前迴圈。。。
基本上都是搭配if來用的。那你自己說break出現了,表示式三的累加會不會繼續執行?肯定不會的
8樓:匿名使用者
break只會跳出當前迴圈
c語言 在for迴圈中用break或continue跳出迴圈後 還執行增量表示式嗎
9樓:匿名使用者
break跳出迴圈,不再執行迴圈內的任何語句
continue執行下一次迴圈,執行for裡面的增量表示式
10樓:春雨_潤物
break不執行
continue執行
為什麼說「在for迴圈中continue語句一結束,先執行每次迭代後的操作,再計算迴圈繼續條件」?
11樓:小青蛙跳著走
for迴圈只執行初始動作一次,當迴圈繼續條件為真時,重複執行迴圈體中的語句,然後完成每次迭代後的操作。
實現**如下:
for(int n=1;n<=10;n++)
輸出結果就是1,2,3,4,。。。。就是continue之後會執行n++
而如果用while語句
int n=1;
while(n<=10)
1、 for迴圈語句從關鍵字for開始,然後是用雙括號擴住的迴圈控制結構體。這個結構體包括初始動作、迴圈繼續條件和每次迭代後的動作。
2、初始動作、迴圈繼續條件和每次迭代後的動作都要用分號分隔。控制結構體後緊跟著花括號括起來的迴圈體,若迴圈體內只有一條語句,則可以省略花括號。
注意:for迴圈中的初始動作可以是0個或是多個以逗號隔開的變數宣告語句或賦值表示式。
for迴圈中每次迭代後的動作可以是0個或多個以逗號隔開的語句。
如果省略for迴圈中的的迴圈繼續條件,則隱含地認為迴圈繼續條件為true。
c語言中continue的用法在for迴圈與while迴圈中的區別
12樓:12345額時代
for(part1;part2;part3) 在for迴圈中,使用continue是跳到part3部分。而while(exp):中沒有part3這一部分。操作方法如下:
1、首先在電腦中雙擊開啟devc++程式,輸入c語言中的固定格式,main函式的呼叫。
2、定義三個變數,a,b,i,分別進行賦值。
3、while的使用,固定結構如圖所示,while後括號後面的是迴圈的條件,當滿足這個條件時,才開始迴圈,不滿足這條件時,則終止迴圈。
4、在while迴圈中一定要記得寫i++;不然會出現無限次迴圈的結果,將程式這樣寫,去掉i++部分。
5、最後可以在裡面寫上printf(hello world),執行即可。
13樓:丌氏
語法區別不大。在while中continue較少使用。
相同:都是跳過剩下的迴圈體**,直接到達右大括號位置。
不同:for中continue之後,接著執行 i++部分。而在while(c=='a')中,直接又回到了判真條件c=='a'這裡。
實踐:從不同點可看出,若在while(c=='a') 中,c=='a'始終為真,因為你把 改變條件的語句(c='b')跳過了。而for不會出現此情況,因為 for(int i = 0;i<10;i++),它的變數自增i++是寫到 for()結構裡面的。
另外,迴圈體注意有三個要素:
1、初始條件;
2、變化;
3、跳出條件。
舉個例子:
for ( int i= 0;i<10; i++ )
//第一次continue後,i變為1,而非99
//迴圈10次之後,此迴圈結束
char c = getchar();//從螢幕讀取單個字元
while ( c == 'a' )
//第一次continue後,c還是』a『,
//while是無限迴圈,c永為 』a『
//因為while的判斷條件 c == 'a',始終沒有改變,始終為真。
14樓:匿名使用者
應該說,沒什麼區別,都是跳轉到迴圈體最後一句之後:
for ( ... )
while ( ... )
15樓:匿名使用者
在執行到continue時,for中的第三個語
句,就是for (語句1;語句2;語句3)中語句3還是會執行,而語句三可以看作 是while裡的最後一條語句。所以continue在while中是從continue開始所有語句不執行,而for中還是執行整個迴圈的最後一條語句,語句3
16樓:哈利路艾
一樣的,都是終止while/for下個執行**段, 重新從while或者for開始判斷。
break語句在for語句和while語句中的作用都是:永久終止其迴圈;而continue語句在兩個語句中存在區別:
在for語句中,continue語句跳過迴圈體的剩餘部分,直接回到調整部分;
在while語句中,調整部分是迴圈體的一部分,所以continue將會跳過它。
17樓:匿名使用者
沒區別,作用都是跳出本次迴圈
18樓:匿名使用者
countinue語句在這兩個迴圈中的功能完全相同,都是直接跳轉到該迴圈的語句體的開始部分,至於是否執行迴圈體,取決於迴圈條件的真與假。
在c語言的if 語句中,用作判斷的表示式是( )a關係表示式 b邏輯表示式 c算術表示式 d任意表示式
19樓:匿名使用者
d任意表示式。
c語言提供了兩種形式的if語句:
1、if(表示式)語句;
2、if(表示式)語句1 else 語句2。
這個表示式可以是任意表示式,如果表示式為 true,則 if 語句內的**塊將被執行。如果表示式為 false,則 if 語句結束後的第一組**(閉括號後)將被執行。
c 語言把任何非零和非空的值假定為 true,把零或 null 假定為 false。
所以既可以是關係表示式、邏輯表示式 ,也可是算術表示式,甚至是一個變數、常量等。
20樓:黃榮大俠
任意表示式,只要()裡的是非零就要執行if()語句;是零就不執行.
關係表示式成立是1,不成立是0;邏輯表示式成立是1,不成立是0;算術表示式的值是非0就是執行,0就不執行.
21樓:匿名使用者
選擇d;
因為:在c中if語句是可以用算術表示式的,例如:a!=c;
在c中if語句是可以用邏輯表示式,例如:a==0||b==0;
關係表示式,要麼真要麼假(1,0),也作為判斷該if語句是否成立,所有是a,b,c都是的,因為答案為d任意表示式!!!
在c語言中 for語句裡面有continue 那還執行for上的a++嗎
22樓:
執行。而continue後面的語句將被跳過
23樓:常語風僪許
if(i%2==0)
括起來是一條複合語句,i為偶數是直接跳轉到開頭的for語句,但不會執行後面的b++
continue 是跳出本次迴圈還是所有迴圈
24樓:浪子_回頭
continue語句在c語言中的作用是跳過此語句下面的語句,然後繼續迴圈,並不是跳出迴圈。
就拿問題中的程式來說,如果i=2時,進入do迴圈,i%3=2%3=2,if(2)條件是正確的,執行continue語句,跳過本迴圈下面的語句,即跳過n++,再判斷while(! i)。
25樓:匿名使用者
continue的作用是在迴圈結構中跳出本次迴圈,繼續執行後面的迴圈:
1. 在你這個題目中,有一個迴圈巢狀,其中for{}是一個迴圈,do{}while是for迴圈裡面的巢狀迴圈,所以如果當前i%3的結果為真,那麼執行continue,也就是跳出當前迴圈,繼續執行下一次的do{}while迴圈。
2. 所以「跳出的是do還是while?」,問法是錯的,跳出的是當前的do{}while迴圈,do{}while是一個整體。
3.如果此處是break的話,那麼會跳出do{}while迴圈,回到外層的for迴圈。
擴充套件資料:
break和continue的區別:
1. break:
1) break 語句可用於跳出迴圈。
2) break所在的迴圈體已經結束。
2. continue:
1) continue 語句中斷迴圈中的迭代,如果出現了指定的條件,然後繼續迴圈中的下一個迭代。2) continue所在的迴圈體並沒有結束
例:
for (i=0;i<5;i++)
// 只輸出 0 , 1 , 2 , 到3就跳出迴圈了
--------------
for (i=0;i<=5;i++)
// 不輸出3,因為continue跳過了,直接進入下一個迭代
26樓:匿名使用者
結束本次迴圈,即跳出迴圈體中下面尚未執行的語句,接著進行下一次是否執行迴圈的判定。
continue語句和break語句的區別是:
continue語句只結束本次迴圈,而不終止整個迴圈的執行。而break語句則是結束整個迴圈過程,不再判斷執行迴圈的條件是否成立。
continue語句只用在for、while、do-while等迴圈體中, 常與if條件語句一起使用, 用來加速迴圈。
27樓:匿名使用者
跳過本次迴圈中的剩餘語句,執行是否進行下一次迴圈的判斷
28樓:匿名使用者
do,while搭配使用時是一體的,不存在跳出do還是跳出while。而是跳出do while這個迴圈整體。
29樓:和睦空大
continue 是跳過本次迴圈 還是要迴圈do while的不跳出所有迴圈
break是跳出迴圈 跳出do while迴圈但不跳出for迴圈
30樓:匿名使用者
跳過本次迴圈中後面的**
你這個程式還弄一個do while迴圈幹什麼?
在c語言中,if語句後面的else語句中能不能巢狀for迴圈
在c語言中,if.else分支語句與for迴圈語句和其他迴圈及分支都是可以巢狀使用的,也就是說在if語句後面和else語句後面都是可以使用for迴圈語句的,例如 給定一個整數n,判斷這個整數n是不是小於2,如果小於2則提示給定數值不在有效範圍內,否則計算從1到n的累加和。int sum 0 if n...
C語言for迴圈,c語言中for語句是怎麼用的
為什麼?我想為你為什麼不知道原因,這是很簡單的邏輯推算題,一看就知道你的呼叫的函式返回值就是你的輸入值,我猜你是想要的結果是1,1 2,1 2 3,1 2 3 4,1 2 3 4 5是吧?呼叫函式的形參只是在你用的時候形成,當呼叫完畢就會釋放,j的運算結果不會保留在記憶體當中,因此你想要那種結果的話...
在C語言中,設有char a Cb A執行語句printfd
設有char a c b a 執行語句printf d,d b,a b 後,輸出結果是 a 65,2 因為在c中,char 等同於一個8位有符號整數,只是內作 字元 解讀。容所以,char a c b a 等同於char a 67 b 65 在以 d格式輸出時的值就是 65,2 選擇a,這個就是把對...