天天看點

玩轉C語言:switch語句和跳轉語句的絕佳應用指南!

作者:樹言樹語Tree

當談到C語言中的分支語句和跳轉語句時,主要涉及的是switch語句以及break語句和continue語句的使用。這些語句提供了一種控制程式流程的方式,使程式可以根據條件執行不同的操作或跳過某些代碼塊。下面我将逐漸介紹這些概念并提供一些示例,幫助你更好地了解它們。

分支語句(switch語句):

switch語句允許根據不同的條件執行不同的代碼塊。它通常用于處理多個選擇情況,并根據不同的選項執行相應的代碼。下面是switch語句的一般形式:

switch (expression) {
    case constant1:
        // 執行代碼塊1
        break;
    case constant2:
        // 執行代碼塊2
        break;
    ...
    case constantN:
        // 執行代碼塊N
        break;
    default:
        // 當沒有比對的常量時執行的代碼塊
}
           

expression是一個表達式,其結果将與各個case後的常量進行比較。

case後的常量可以是整數或字元常量,它們将與expression的值進行比較。

如果某個case比對了expression的值,将執行該case後的代碼塊,并且通過break語句跳出switch語句。

如果沒有比對的case,将執行default後的代碼塊(可選)。

下面是一個示例,示範如何使用switch語句根據使用者輸入的數字執行不同的操作:

#include <stdio.h>

int main() {
    int choice;
    printf("請輸入一個數字(1-3): ");
    scanf("%d", &choice);

    switch (choice) {
        case 1:
            printf("你選擇了數字1\n");
            break;
        case 2:
            printf("你選擇了數字2\n");
            break;
        case 3:
            printf("你選擇了數字3\n");
            break;
        default:
            printf("無效的選擇\n");
    }

    return 0;
}
           

在上述示例中,根據使用者輸入的數字,程式将輸出相應的消息。如果輸入的數字不是1、2或3,則将輸出"無效的選擇"。

跳轉語句:

跳轉語句用于控制程式的執行流程,它們可以使程式跳過一些代碼塊或在循環中終止循環的執行。以下是兩種常見的跳轉語句:

break語句:

break語句用于在switch語句或循環中提前結束代碼塊的執行,并跳出該語句或循環。當break語句執行時,程式将繼續執行跳出的語句或循環之後的代碼。下面是一個示例,展示了如何在switch語句中使用break語句:

#include <stdio.h>

int main() {
    int choice;
    printf("請輸入一個數字(1-3): ");
    scanf("%d", &choice);

    switch (choice) {
        case 1:
            printf("你選擇了數字1\n");
            break;
        case 2:
            printf("你選擇了數字2\n");
            break;
        case 3:
            printf("你選擇了數字3\n");
            break;
        default:
            printf("無效的選擇\n");
    }

    printf("程式繼續執行...\n");

    return 0;
}
           

在上述示例中,如果使用者輸入的數字是1、2或3,将會輸出相應的消息,并且在執行完相應的代碼塊後跳出switch語句,繼續執行後續的代碼。

continue語句:

continue語句用于在循環中跳過目前疊代,并開始下一次疊代。當continue語句執行時,程式将直接跳過目前疊代剩餘的代碼,并開始下一次循環疊代。下面是一個示例,展示了如何在循環中使用continue語句:

#include <stdio.h>

int main() {
    int i;
    for (i = 1; i <= 5; i++) {
        if (i == 3) {
            continue;
        }
        printf("%d ", i);
    }

    printf("\n循環結束\n");

    return 0;
}
           

在上述示例中,當變量i的值等于3時,将執行continue語句,跳過後續的代碼(即printf語句),并開始下一次循環疊代。這将導緻輸出中沒有數字3。

希望通過以上講解,你能對C語言中的分支語句(switch語句)和跳轉語句(break語句、continue語句)有一個更好的了解。不斷練習和編寫代碼是鞏固和提高你的C語言技能的關鍵,祝你取得成功!

每天堅持學習一點點,不求有回報,隻願可以豐富自己!!!

繼續閱讀