到現在我們大概介紹完了所有的迴圈語法,大家可以依照自己的需要使用不同的迴圈。
這次我們來介紹迴圈中與if條件式配合的語法--「continue & break」!
大家雖然學到的迴圈的概念,可以省去很多重複作業的麻煩,但若處在迴圈中遇到特殊情況,需要立刻重新或離開迴圈時,就需要應用到「continue & break」的概念了。
如同以下的程式碼:
#include <stdio.h>
int main()
{
int data;
for(int i = 0; i<10; i++){
printf("%d times input: ", i+1);
scanf("%d", &data);
if(data == 0){
continue;
}
else if(data == -1){
break;
}
printf("your data: %d\n", data);
}
return 0;
}
本來for迴圈應該要執行十次,卻可以提前跳出,或還沒執行完迴圈全部內容卻直接進行下一次迴圈。
(1) continue
當使用到continue時,會直接不理迴圈剩下的內容,進入下一次迴圈判斷,參考剛剛的程式碼如以下:
for(int i = 0; i<10; i++){
printf("%d times input: ", i+1);
scanf("%d", &data);
if(data == 0){
continue;
}
else if(data == -1){
break;
}
printf("your data: %d\n", data);
}
(2) break
當使用到continue時,會直接不理迴圈剩下的內容,離開整個迴圈,參考剛剛的程式碼如以下:
#include <stdio.h>
int main()
{
int data;
for(int i = 0; i<10; i++){
printf("%d times input: ", i+1);
scanf("%d", &data);
if(data == 0){
continue;
}
else if(data == -1){
break;
}
printf("your data: %d\n", data);
}
return 0;
}
#include <stdio.h>
int main()
{
int data;
for(int i = 0; i<10; i++){
printf("%d times input: ", i+1);
scanf("%d", &data);
if(data == 0){
continue;
}
else if(data < 0){
break;
}
printf("your data: %d, ", data);
if(data%2 == 0){
printf("EVEN.\n");
}
else{
printf("ODD.\n");
}
}
return 0;
}