break和continue語句都可以用在循環中,用來跳出循環(結束循環);break語句還可以用在switch語句中,用來跳出switch語句。
break語句通常用在循環語句和開關語句中。當break用於開關語句switch中時,可使程序跳出switch而執行switch以後的語句;如果沒有break語句,則將成為一個死循環而無法退出。break在switch 中的用法已在前面介紹開關語句時的例子中碰到,這裡不再舉例。
當break語句用於do-while、for、while循環語句中時,可使程序終止循環而執行循環後面的語句,通常break語句總是與if語句聯在一起,即滿足條件時便跳出循環。
【例6-8】
復制純文本新窗口
- #include <stdio.h>
- int main(void){
- int i=0;
- char c;
- while(1){ /*設置循環*/
- c='\0'; /*變量賦初值*/
- while(c!=13&&c!=27){ /*鍵盤接收字符直到按回車或Esc鍵*/
- c=getch();
- printf("%c\n", c);
- }
- if(c==27)
- break; /*判斷若按Esc鍵則退出循環*/
- i++;
- printf("The No. is %d\n", i);
- }
- printf("The end");
- return 0;
- }
#include <stdio.h> int main(void){ int i=0; char c; while(1){ /*設置循環*/ c='\0'; /*變量賦初值*/ while(c!=13&&c!=27){ /*鍵盤接收字符直到按回車或Esc鍵*/ c=getch(); printf("%c\n", c); } if(c==27) break; /*判斷若按Esc鍵則退出循環*/ i++; printf("The No. is %d\n", i); } printf("The end"); return 0; }
注意:
continue語句的作用是跳過循環體中剩余的語句而強行執行下一次循環。continue語句只用在for、while、do-while等循環體中,常與if條件語句一起使用,用來加速循環。
對比一下break和continue。
while的用法:
while(表達式1){
……
if(表達式2) break;
……
}
continue的用法:
while(表達式1){
……
if(表達式2) continue;
……
}
【例6-9】
復制純文本新窗口
 
- #include <stdio.h>
- int main(void){
- char c;
- while(c!=13){ /*不是回車符則循環*/
- c=getch();
- if(c==0X1B)
- continue; /*若按Esc鍵不輸出便進行下次循環*/
- printf("%c\n", c);
- }
- return 0;
- }