1樓:我一公尺八
那要看你bai是在**定義的迴圈變數
du,如果是區域性變zhi量的話,在模組
dao內跳出迴圈後i的值在
版不被改變的情況下等權於7,退出模組後,無法訪問到i,也就是說在外部模組i是不可見的;如果是全域性變數,那麼在翻譯單元內,i的值都為7(在不被改變的情況下).
2樓:
最有效率的辦法就是i不變化。所以在c語言裡當迴圈退出時,i會保留原來的值,也就是7
3樓:簫聚星月
迴圈變數如果不再賦值的話就不變,要看你的**是怎樣寫的。
4樓:夢幻子凝
for(i=0;i<7;i++)
跳出迴圈後,i的值當然已經是自增以後的值7了,不會是0
5樓:匿名使用者
當執行完成迴圈體,且迴圈體無中斷語句。最後i=7。
i在作用域內一直保持,取決於其生存期。
6樓:匿名使用者
如果是靜態區域性變bai量,i的值也會du被保留,只是其zhi他函式無法呼叫daoi的值,即i的作用域僅限於內i所在的函式;
但如果是區域性容變數,當跳出i所在的函式後,i的空間將會被釋放,這樣i的值也不會被保留,當下次再訪問該函式時,i還是會以初始值的狀態被使用,並且i的作用域僅限於i所在的函式;
如果是全域性變數,又分為外部全域性變數和內部全域性變數,如果是內部全域性變數,那該變數作用於整個原始檔,如果是外部全部變數,則在呼叫時,需要申明後,才能呼叫.
如何在c語言中跳出for迴圈
7樓:天雲一號
跳出for迴圈主要有以下2中方式:
1、用break語句。如:
int i;
for(i=0; i<10; i++)
printf("%d", i);
2、用return語句(一般用在函式體屬中,作為函式的返回值跳出該函式,也即跳出了函式體中的for迴圈)
int fun(int a)}
8樓:匿名使用者
就用break啊!在for迴圈裡面加個判斷,如果傳入的是-1就執行break
9樓:
應該用if( num[i] == -1) then break;
照你的語句,如果輸入的不是-1,就陷入while死迴圈了。
10樓:嘻嘻酸奶
for(i=0;i<20;i++)
scanf下面按順序執行,可以不用while,只用for乙個迴圈
11樓:匿名使用者
我按照你的意思用g++試了一下,應內
該沒問容題。
#include
#include
int main()
getchar();
return 0;}
12樓:林藝輝
應該如下
for(i=0;i<20;i++)
c語言 在for迴圈中用break或continue跳出迴圈後 還執行增量表示式嗎
13樓:匿名使用者
break跳出迴圈,不再執行迴圈內的任何語句
continue執行下一次迴圈,執行for裡面的增量表示式
14樓:春雨_潤物
break不執行
continue執行
c語言中「從迴圈體內某一層跳出,繼續執行迴圈外的語句是」謝謝
15樓:09尋夢飛翔
是break;
break和continue的區別:
break直接跳出迴圈 執行迴圈後面的語句continue是結束本次迴圈,但不跳出迴圈,繼續下次迴圈
16樓:暮影
是:copybreak;
for(i=0;ibai
足if()裡面du的條件時,跳zhi出daofor(j=0;j
c語言中continue的用法在for迴圈與while迴圈中的區別
17樓: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),執行即可。
18樓:丌氏
語法區別不大。在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',始終沒有改變,始終為真。
19樓:匿名使用者
應該說,沒什麼區別,都是跳轉到迴圈體最後一句之後:
for ( ... )
while ( ... )
20樓:匿名使用者
在執行到continue時,for中的第三個語
句,就是for (語句1;語句2;語句3)中語句3還是會執行,而語句三可以看作 是while裡的最後一條語句。所以continue在while中是從continue開始所有語句不執行,而for中還是執行整個迴圈的最後一條語句,語句3
21樓:哈利路艾
一樣的,都是終止while/for下個執行**段, 重新從while或者for開始判斷。
break語句在for語句和while語句中的作用都是:永久終止其迴圈;而continue語句在兩個語句中存在區別:
在for語句中,continue語句跳過迴圈體的剩餘部分,直接回到調整部分;
在while語句中,調整部分是迴圈體的一部分,所以continue將會跳過它。
22樓:匿名使用者
沒區別,作用都是跳出本次迴圈
23樓:匿名使用者
countinue語句在這兩個迴圈中的功能完全相同,都是直接跳轉到該迴圈的語句體的開始部分,至於是否執行迴圈體,取決於迴圈條件的真與假。
如何在c語言中跳出for迴圈
跳出for迴圈主要有以下2中方式 1 用break語句。如 int i for i 0 i 10 i printf d i 2 用return語句 一般用在函式體屬中,作為函式的返回值跳出該函式,也即跳出了函式體中的for迴圈 int fun int a 就用break啊!在for迴圈裡面加個判斷,...
VB,三重迴圈體迴圈問題 求解中
for i 1 to 2 for j 1 to 4 if j mod 2 0 then a a 1 end if a a 1 next j next i print a 先去掉中間的if三行,運算結果 i兩次,j 4次,a 8if mod的會有4次不等於0,a會再加4次1.所有。總的等於12 假設有...
在C語言中,break是跳出當層迴圈,但是若是下面這種情況呢
這個break跳出的是b迴圈,連著寫兩個break是錯誤的,想要跳出a迴圈要在b外寫break,可以這麼做 表示式1下一行加個int flag 0 然後if 條件3 flag 1 break 然後在b外加個if flag break 這樣滿足條件3時就可以連續跳出b a。 滄海雄風 不可以你可以在迴...