c語言中迴圈裡return的具體作用是什麼,和break

2021-04-28 17:35:15 字數 5468 閱讀 4763

1樓:千鋒教育

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並沒有列印出來

2樓:泉彩榮己夏

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

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

while()

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

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

return

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

return

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

3樓:我是一個麻瓜啊

如下**

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) }

4樓:匿名使用者

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

5樓:匿名使用者

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

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

6樓:匿名使用者

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,因為他結束了本次迴圈

7樓:千鋒教育

在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語句塊了。

8樓:手機使用者

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

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

語句4;

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

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

9樓:匿名使用者

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函式

10樓:哈哈

如:function aii()}}

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

11樓:匿名使用者

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();}

12樓:付騰飛

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語言的 ···

13樓:超越_駒

break :跳出迴圈

continue:結束本次迴圈

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

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

14樓:滄海雄風

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

15樓:薛慶安

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

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

16樓:匿名使用者

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

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

17樓:手機使用者

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

18樓:匿名使用者

給你舉個例子吧:

.......

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中,用來結束條件匹配,道理和在迴圈中一樣

19樓:百味白開水

大家實在太快了,呵呵,

給點參考意見好了:

break:用在迴圈中就是退出迴圈,不再執行以後的迴圈用在分支中就是不執行此分支塊的下面的語句

continue:迴圈時不執行本次迴圈continue後面的**,跳入執行下一次迴圈

20樓:匿名使用者

又沒我回答的份了。

break: 退出迴圈(不一定只用於迴圈啦。)

continue:進入下一次迴圈(即跳過本次未執行的迴圈)

C語言return函式的用法,c語言中的函式的return使用

這條語句一般情況下加在主函式的最後,表示程式執行正常,則返回一個整數值0。其實在windows下一般沒有這個要求,除非是一個程式呼叫另外一個程式,或者在unix和linux下系統會要求一個程式返回一個整數值。告訴你,return意思就是結束函式並返回值函式有兩種 一種是不返回值的,而另外一種則是返回...

C語言中的死迴圈是什麼意思,C語言中的死迴圈是什麼意思啊?

就是迴圈條件總是滿足,無法退出迴圈啊 比如最簡單的 while 1 有時候不注意就容易引起這種情況 int i 0 while i 10 死迴圈就是這樣的 int x 0 while x 0 也就是說沒有關鍵性的結束迴圈的語句,導致沒有終止的執行迴圈體裡面的程式段,就是死迴圈 沒有迴圈終止條件,或者...

c語言中for迴圈中裡的表示式分別省略

for 單次表示式 條件表示式 末尾迴圈體 其中,表示式可以省略,但是分號不可省略。for迴圈是開界的。它的一般形式為 for 條件表示式 語句 初始化總是一個賦值語句,它用來給迴圈控制變數賦初值 條件表示式是一個關係表示式,它決定什麼時候退出迴圈 增量定義迴圈控制變數每迴圈一次後 按什麼方式變化。...