選單
×
   ❮   
HTML CSS JAVASCRIPT SQL PYTHON JAVA PHP HOW TO W3.CSS C C++ C# BOOTSTRAP REACT MYSQL JQUERY EXCEL XML DJANGO NUMPY PANDAS NODEJS R TYPESCRIPT ANGULAR GIT POSTGRESQL MONGODB ASP AI GO KOTLIN SASS VUE DSA GEN AI SCIPY AWS CYBERSECURITY DATA SCIENCE
     ❯   

C Switch


Switch 語句

與編寫一堆 if..else 語句相比,您可以使用 switch 語句。

The switch statement selects one of many code blocks to be executed

語法

switch (expression) {
  case x
    // 程式碼塊
    break;
  case y
    // 程式碼塊
    break;
  default
    // 程式碼塊
}

工作原理如下

  • switch 表示式只計算一次
  • 表示式的值與每個 case 的值進行比較
  • 如果匹配成功,則執行關聯的程式碼塊
  • The break statement breaks out of the switch block and stops the execution
  • The default statement is optional, and specifies some code to run if there is no case match

下面的示例使用工作日數字來計算工作日名稱。

示例

int day = 4;

switch (day) {
  case 1
    printf("Monday");
    break;
  case 2
    printf("Tuesday");
    break;
  case 3
    printf("Wednesday");
    break;
  case 4
    printf("Thursday");
    break;
  case 5
    printf("Friday");
    break;
  case 6
    printf("Saturday");
    break;
  case 7
    printf("Sunday");
    break;
}

// 輸出“星期四”(第 4 天)
自己動手試一試 »

break 關鍵字

When C reaches a break keyword, it breaks out of the switch block.

這將停止塊內更多程式碼和 case 測試的執行。

當找到匹配項並完成任務時,就該中斷了。無需再進行測試。

break 可以節省大量執行時間,因為它“忽略”了 switch 塊中所有其餘程式碼的執行。



default 關鍵字

default關鍵字指定了在沒有 case 匹配時執行的一些程式碼。

示例

int day = 4;

switch (day) {
  case 6
    printf("Today is Saturday");
    break;
  case 7
    printf("Today is Sunday");
    break;
  default
    printf("Looking forward to the Weekend");
}

// 輸出 "Looking forward to the Weekend"
自己動手試一試 »

Note: The default keyword must be used as the last statement in the switch, and it does not need a break.


C 練習

透過練習來測試自己

練習

Insert the missing parts to complete the following switch statement

int day = 2;
switch () {
 1:
    printf("Monday");
    ;
 2:
    printf("Sunday");
    ;
}

開始練習



×

聯絡銷售

如果您想將 W3Schools 服務用於教育機構、團隊或企業,請傳送電子郵件給我們
sales@w3schools.com

報告錯誤

如果您想報告錯誤,或想提出建議,請傳送電子郵件給我們
help@w3schools.com

W3Schools 經過最佳化,旨在方便學習和培訓。示例可能經過簡化,以提高閱讀和學習體驗。教程、參考資料和示例會不斷審查,以避免錯誤,但我們無法保證所有內容的完全正確性。使用 W3Schools 即表示您已閱讀並接受我們的使用條款Cookie 和隱私政策

版權所有 1999-2024 Refsnes Data。保留所有權利。W3Schools 由 W3.CSS 提供支援