iT邦幫忙

1

【從零開始的 C 語言筆記】第二十一篇-continue & break

  • 分享至 

  • xImage
  •  

不怎麼重要的前言

到現在我們大概介紹完了所有的迴圈語法,大家可以依照自己的需要使用不同的迴圈。

這次我們來介紹迴圈中與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;
}

https://ithelp.ithome.com.tw/upload/images/20211101/20142565mn8tnMf8iw.png
本來for迴圈應該要執行十次,卻可以提前跳出,或還沒執行完迴圈全部內容卻直接進行下一次迴圈。


正式使用

  1. 規則
    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);
}

https://ithelp.ithome.com.tw/upload/images/20211101/201425659dbNKDpPiY.png

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

https://ithelp.ithome.com.tw/upload/images/20211101/20142565CEwjWSoDHV.png

  1. 應用
    利用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;
}

https://ithelp.ithome.com.tw/upload/images/20211101/20142565z28b6sAvy5.png


到這裡的內容就是最基本的語法們了,如果有不熟悉的內容可以往回複習、測試,其實真的不會很難的!

下一篇我們來實作看看多重迴圈,做一個簡單的九九乘法表吧!


圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言