舉例說明c語言中的中斷語句break,continue,re

時間 2021-10-17 04:50:58

1樓:

continue跳出一層迴圈,進行下一步。比如它在一個for迴圈內,則跳出該迴圈。進入下一程式步。

break跳出兩層迴圈,進行下一步。比如它在兩個for迴圈內,則直接跳到外層迴圈外,進入下一個程式步。

for( ...;. ;.)

}//直接跳出迴圈到這裡

return 返回函式值。 void型別函式不反悔任何型別資料。只寫return;

2樓:我要鬥爭到死

break是跳出迴圈或switch判斷語句,continue 只是不執行本次迴圈,而去繼續下一次迴圈。

return 是從函式中返回。 。

沒有相同之處

3樓:匿名使用者

/*看註釋

*/# include

void test_return()

int main(void)

printf("%d\t",i);

}printf("\n使用continue後輸出:\n");

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

printf("%d\t",i);

}printf("\n");

test_return();

return 0;}/*

----------

使用break後輸出:

0使用continue後輸出:

1 2

return 之前的所有語句

--------------*/

說明在迴圈中使用break和continue,return語句之間的區別

4樓:千鋒教育

break: 此語句導致程式終止包含它的迴圈,並進行程式的下一階段(整個迴圈後面的語句),即,不是跳到下一個迴圈週期而是退出迴圈。如果break語句包含在巢狀迴圈裡,它只跳出最裡面的迴圈。

如下**

public class test

system.out.print(i+" ");}}

}可以看到程式輸出了01234到5的時候跳出了迴圈

continue:迴圈語句裡有此語句時,程式執行到此語句時,不在執行迴圈體裡continue後面的語句而是跳到下一個迴圈入口處執行下一個迴圈。

把break改為continue

public class test

system.out.print(i+" ");}}

}可以看到只有5沒有輸出,也即當i=5時沒有執行列印操作,直接到下一次迴圈

而return是表示從被調函式返回到主調函式繼續執行,返回時可附帶一個返回值,由return後面的引數指定。return後函式就結束了,後面的語句不再執行

public class test

system.out.print(i+" ");

}system.out.println("hello");

}public static void main(string args)

}可以看到後面的hello並沒有列印出來

5樓:泉彩榮己夏

break和continue都是中斷當前的迴圈(注意,迴圈是可以巢狀的,中斷的只是當前層的迴圈)

break語句中斷迴圈後跳轉到迴圈後的語句標籤執行(before),而continue則跳轉到迴圈入口語句標籤執行(after)before:

while()

after:............

以上就是一個迴圈的簡易模型。

return

語句就牛了,它可以出現在**中的任意位置,不只是迴圈(但是一般沒有人將return語句置於迴圈體內,據說是對效率有影響,但是在我理解上看不出來有什麼影響)

return

作用是,將函式呼叫棧彈棧,恢復現場。說的簡單點兒就是結束當前的函式(順便返回函式執行結果),回到本函式被呼叫處繼續執行。

6樓:我是一個麻瓜啊

如下**

12345678910

public class test             system.out.print(i+" ");        }    }}

可以看到程式輸出了01234到5的時候跳出了迴圈

continue:迴圈語句裡有此語句時,程式執行到此語句時,不在執行迴圈體裡continue後面的語句而是跳到下一個迴圈入口處執行下一個迴圈。

把break改為continue

12345678910

public class test             system.out.print(i+" ");        }    }}

可以看到只有5沒有輸出,也即當i=5時沒有執行列印操作,直接到下一次迴圈

而return是表示從被調函式返回到主調函式繼續執行,返回時可附帶一個返回值,由return後面的引數指定。return後函式就結束了,後面的語句不再執行

1234567891011121314

public class test             system.out.print(i+" ");        }        system.

out.println("hello");    }    public static void main(string args) }

7樓:匿名使用者

break是跳出當前整個迴圈語句,而continue是跳過當前迴圈的某一個條件語句的動作,return則是跳出當前函式而不往下繼續執行。希望採納

8樓:匿名使用者

break 跳出迴圈 執行下面的迴圈continue 跳出本次迴圈 然後再繼續迴圈return 終止下面的執行

c語言中一個迴圈裡return的具體作用是什麼,和break或continue有什麼相同和不同

c語言中break與continue的用法與區別

9樓:匿名使用者

1、break是結束迴圈。 continue是結束本次迴圈。

迴圈是有很多次的,break之後不再迴圈,continue結束本次迴圈後,再開始下一次的迴圈。

2、例子:

while(x++ < 10)

printf("%d\r\n",x);

}//結果是輸出 1 2 就退出了整個while迴圈//但是如果使用continue

while(x++ < 10)

printf("%d\r\n",x);

}//結果是:1 2 4 5 6 7 8 9 10 可見他僅僅是不輸出3,因為他結束了本次迴圈

10樓:千鋒教育

在c語言中,兩個跳出迴圈語句的語句break和continue。初學c,難免會混淆兩個語句之間的區別,導致程式某個區域性出現邏輯錯誤。以下是二者的區別:

continue只對直接包含它的迴圈體有效(也就是for,while, 而switch{}中的不算迴圈體);

break有效的是直接包含它的for,while,switch塊。

比如在不包含switch的****現break或者continue,那麼break跳出迴圈體,而continue跳出本次迴圈,而對於在迴圈中巢狀switch語句的**中,break僅跳出最內層的塊,這個塊若是switch,就僅跳出switch,而continue即使出現在switch塊中,因為continue的作用範圍僅針對 for while 之類的迴圈語句,故不起作用,依舊跳出本次迴圈,不注意的話也會認為同樣是跳出switch語句塊了。

11樓:手機使用者

break可以理解為中斷整個迴圈,而continue只是中斷一次迴圈,舉個栗子:

for(i=1;i<10;i++)

語句4;

如果程式執行到break語句,則迴圈結束,跳轉到“語句4”。

如果程式執行到continue,則跳過語句3,直接進行i++,去執行下一次迴圈,迴圈完之後,再跳轉到“語句4”。

12樓:匿名使用者

int i=0;

/*1*/for(i=0;i<100;i++)else

}/*2*/printf("over\n");

continue 結束本次迴圈,進入下一次迴圈break 結束迴圈,往下走,

比如上面的例子,當i<20的時候,遇到continue,結束本次迴圈,直接到/*1*/處(i++還是執行的)

當大於等於20的時候,直接break掉,就是跳出了for迴圈體,往下走,執行/*2*/處的printf函式

13樓:哈哈

如:function aii()}}

continue i-- 就是繼續上次的for 迴圈break 跳出整個function不再迴圈個人理解…歡迎糾正!

14樓:匿名使用者

for迴圈條件一塌糊塗。for(初始化表示式;條件表示式;表示式)

初始化一般是類似於 i=10; 這類賦值方式 。

條件表示式必須能判斷真假(true or false 0 或1)類似 a>0; 或a>b; 或 a>0 && b>a 等等表示式一般是改變迴圈因子的居多

比如i++; i+=10 ; i/=10;

這類 一般無關迴圈因子的,最好寫在for迴圈裡面。

你這道題是想判斷輸入的是幾位數。給個寫法給你:

#include

main()

} if(b<=5) printf("你輸入了一個 %d 位的數",b);

getch();}

15樓:付騰飛

for(j=0;j<3;j++)

這個事說如果j被2整除的話跳過x++

比如說#include

main()

printf("\n");

} 如果n整除3的話跳過本次迴圈到printf("\n");也就是不輸出任何數值···

printf("%d\n",n);是輸出100到200以內不能被3整除的數·····

continue 是跳過本次迴圈

break 是結束迴圈

不知道解釋的清楚不清楚···我也是剛學c語言的 ···

16樓:超越_駒

break :跳出迴圈

continue:結束本次迴圈

如果你一個for語句中,用break,那不管你for語句執行到什麼地方,那跳出去之後就不會再進來,除非你程式執行第二圈。

如果用continue,那你的for語句這次就不再往它迴圈體下面執行了,直接回到for語句迴圈體,在變數++後的地方繼續執行迴圈。每次遇到類推

17樓:滄海雄風

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

18樓:薛慶安

break 是結束迴圈 , 不再執行迴圈體

continue 是跳過本次迴圈 ,繼續執行迴圈體

19樓:匿名使用者

break 表示直接結束當前迴圈;

continue 表示停止當前的迴圈,進入下一次迴圈,迴圈體並沒有結束。

20樓:手機使用者

break 跳出整個迴圈。。。那不再迴圈。。。continue跳出此次迴圈。。。進行下次迴圈。。

21樓:匿名使用者

給你舉個例子吧:

.......

sum = 0

for(i = 0;i < 10; ++i).......

結果為:sum 為 0+1+3=4

迴圈計算累加和,放在sum中

過程如下:i從0開始迴圈,每次i++。當i == 2的時候,執行continue,跳過sum += i這句,繼續迴圈,也就是說,2並沒有加到sum中去。

迴圈繼續,i變成3,執行sum+=i。然後發現i == 4了,於是執行break,跳出for迴圈,也就是說,break之後,i的值固定在4了,迴圈語句不再被執行了,sum += i這句也就不再被執行了。

break是直接跳出迴圈體,而continue是跳過迴圈體中餘下的語句(這裡為sum += i;)繼續執行迴圈。

除此之外,break還可以用在switch/case中,用來結束條件匹配,道理和在迴圈中一樣

c語言中for語句是怎麼用的,C語言語言中FOR的用法

for語句通常具有如下形式 for statement1 statement2 statement3 這裡,statement1 statement2和statement3是一般的語句。其中statement2應具有布林型別,但在c中具有int型別 因為c語言不支援布林型別 這段語句的執行流程如下 ...

關於C語言for的語法,c語言中for語句是怎麼用的

i 1表示把i的值設為1,i 表示i自加1即i i 1 i 5應該是for的判斷表示式吧 for i 1 i 5 i 的意思是把i初值設為1,這個設初值在整個for迴圈只會執行一次,每次執行前都會判斷i 5是否成立,如果成立就執行語句,然後i 就是i自加1,不成立則跳出迴圈。然後判斷i 5是否成立 ...

asp的if語句的巢狀怎麼寫,請舉例說明

簡單的 if 5 4 then 5大於4 常規的 if 5 4 then 5大於4 5小於4 end if 多個條件 if 5 5 then 5大於5 elseif 5 5 then 5等於5 5小於5 end if 巢狀的話把 其中的一個 換成一個if then elseend if即可。a 5i...