Switch C:多選結構的利器

在編寫程序時,我們經常需要根據某些條件執行不同的代碼,這時就需要使用選擇結構。在C語言中,有if語句、switch語句等多種選擇結構可供使用。其中,switch語句是一種非常強大的選擇結構,它可以根據具體的值來選擇不同的執行路徑。本文將詳細介紹switch語句的使用方法,希望能對大家有所幫助。

一、基本語法及用法

1、基本語法

switch(expression){
    case constant1:
        statement1;
        break;
    case constant2:
        statement2;
        break;
    ...
    default:
        statement_default;
}

switch語句由switch關鍵字、表達式、花括號、case標籤、語句以及default標籤組成。其中:

  • expression:表示要進行判斷的表達式,必須為整型或字符型
  • case constant:表示匹配值,可以是整型或字符型常量
  • statement:表示要執行的語句,可以是一條或多條
  • break:表示跳出switch語句,可選
  • default:表示默認情況,可選

2、使用方法

switch語句的使用方法非常靈活,可以根據不同的場景採取不同的形式。下面是一些常見的使用方法:

1)判斷具體值

我們可以根據表達式的值來進行判斷,然後執行對應的語句。例如:

int i = 1;
switch(i){
    case 1:
        printf("i = 1\n");
        break;
    case 2:
        printf("i = 2\n");
        break;
    default:
        printf("i != 1 and i != 2\n");
        break;
}

上述代碼中,表達式i的值為1,因此會執行第一個case標籤下的語句,輸出“i = 1”。

2)使用連續的標籤

我們可以使用連續的case標籤,表示這些值都會執行同樣的語句。例如:

int i = 1;
switch(i){
    case 1:
    case 2:
    case 3:
        printf("i is between 1 and 3\n");
        break;
    default:
        printf("i is not between 1 and 3\n");
        break;
}

上述代碼中,表達式i的值為1,2,3中的任意一個,因此會執行第一個case標籤下的語句,輸出“i is between 1 and 3”。

3)省略break

我們可以省略case標籤後面的break語句,這樣會執行下一個case標籤下的語句。例如:

int i = 1;
switch(i){
    case 1:
        printf("i = 1\n");
    case 2:
        printf("i is bigger than 2\n");
    default:
        printf("default\n");
        break;
}

上述代碼中,表達式i的值為1,因此會執行第一個case標籤下的語句,輸出“i = 1”和“i is bigger than 2”,然後繼續執行下一個case標籤下的語句,輸出“default”。注意,為了避免出現意外情況,我們在最後一條語句使用了break語句。

二、代碼示例

下面是一個完整的代碼示例:

#include
int main(){
    int i;
    printf("請輸入1或2或3:");
    scanf("%d",&i);
    switch(i){
        case 1:
            printf("你選擇了1\n");
            break;
        case 2:
            printf("你選擇了2\n");
            break;
        case 3:
            printf("你選擇了3\n");
            break;
        default:
            printf("你沒有選擇1或2或3\n");
            break;
    }
    return 0;
}

該程序中,我們使用scanf函數來獲取用戶輸入,然後使用switch語句來根據用戶輸入執行不同的語句。當用戶輸入1、2、3時,程序會分別輸出“你選擇了1”、“你選擇了2”、“你選擇了3”,否則輸出“你沒有選擇1或2或3”。

三、小結

本文詳細介紹了C語言中switch語句的使用,包括基本語法及用法、使用方法和代碼示例。使用switch語句可以使程序結構更清晰、代碼更簡潔,適用於各種不同的場景。我們在編寫程序時,需要根據具體情況選擇最合適的選擇結構,以便更好地完成我們的任務。

原創文章,作者:SXIGW,如若轉載,請註明出處:https://www.506064.com/zh-hant/n/373150.html

(0)
打賞 微信掃一掃 微信掃一掃 支付寶掃一掃 支付寶掃一掃
SXIGW的頭像SXIGW
上一篇 2025-04-25 15:26
下一篇 2025-04-25 15:26

相關推薦

  • lsw2u1:全能編程開發工程師的利器

    lsw2u1是一款多功能工具,可以為全能編程開發工程師提供便利的支持。本文將從多個方面對lsw2u1做詳細闡述,並給出對應代碼示例。 一、快速存取代碼段 在日常開發中,我們總會使用…

    編程 2025-04-29
  • Python刷課:優化學習體驗的利器

    Python刷課作為一種利用自動化技術優化學習體驗的工具已經被廣泛應用。它可以幫助用戶自動登錄、自動答題等,讓用戶在學習過程中可以更加專註於知識本身,提高效率,增加學習樂趣。 一、…

    編程 2025-04-29
  • Vue TS工程結構用法介紹

    在本篇文章中,我們將從多個方面對Vue TS工程結構進行詳細的闡述,涵蓋文件結構、路由配置、組件間通訊、狀態管理等內容,並給出對應的代碼示例。 一、文件結構 一個好的文件結構可以極…

    編程 2025-04-29
  • Python程序的三種基本控制結構

    控制結構是編程語言中非常重要的一部分,它們指導着程序如何在不同的情況下執行相應的指令。Python作為一種高級編程語言,也擁有三種基本的控制結構:順序結構、選擇結構和循環結構。 一…

    編程 2025-04-29
  • HBuilder2.0:一站式開發利器

    本文將從如下幾個方面對HBuilder2.0進行詳細闡述,幫助初學者快速了解並開始使用該工具: 一、簡介 HBuilder2.0是一個跨平台的HTML5集成開發工具。它綜合了編碼、…

    編程 2025-04-28
  • Powersploit:安全評估與滲透測試的利器

    本文將重點介紹Powersploit,並給出相關的完整的代碼示例,幫助安全人員更好地運用Powersploit進行安全評估和滲透測試。 一、Powersploit簡介 Powers…

    編程 2025-04-28
  • JL Transaction – 實現分布式事務管理的利器

    本文將為大家介紹JL Transaction,這是一款可以實現分布式事務管理的開源事務框架,它可以幫助企業在分布式環境下有效地解決事務的一致性問題,從而保障系統的穩定性和可靠性。 …

    編程 2025-04-28
  • 全自動股票交易軟件:實現自動交易賺取更多收益的利器

    全自動股票交易軟件是一款能夠幫助股票投資者實現自動交易,據此獲取更多收益的利器。本文將從多個方面詳細闡述該軟件的特點、優點、使用方法及相關注意事項,以期幫助讀者更好地了解和使用該軟…

    編程 2025-04-27
  • Lidar避障與AI結構光避障哪個更好?

    簡單回答:Lidar避障適用於需要高精度避障的場景,而AI結構光避障更適用於需要快速響應的場景。 一、Lidar避障 Lidar,即激光雷達,通過激光束掃描環境獲取點雲數據,從而實…

    編程 2025-04-27
  • mfastboot:快速刷機利器

    本文將詳細闡述全能工程師如何使用mfastboot進行快速刷機,並且深入解析mfastboot的功能與優勢。 一、下載並配置mfastboot 1、首先,在Ubuntu中打開終端並…

    編程 2025-04-27

發表回復

登錄後才能評論