不怎么重要的前言
到现在我们大概介绍完了所有的迴圈语法,大家可以依照自己的需要使用不同的迴圈。
这次我们来介绍迴圈中与if条件式配合的语法--「continue & break」!
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迴圈应该要执行十次,却可以提前跳出,或还没执行完迴圈全部内容却直接进行下一次迴圈。
正式使用
规则continue跟break通常合併if条件式一起使用,是用来控制迴圈的一种方式。
(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;}
利用continue & break结合if条件式,来控制判断奇偶的程式,在遇到0时直接开始下一次迴圈,遇到小于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;}