天天看點

C語言/C++【switch語句詳解(用法、規則、流程圖、執行個體)】1、switch語句【C語言】2、switch語句【C++】

C++| 匠心之作 從0到1入門學程式設計【視訊+課件+筆記+源碼】

目錄

1、switch語句【C語言】

1.2、C語言中 switch語句的文法

1.3、switch語句遵循規則

1.3、switch流程圖

1.4、switch執行個體

2、switch語句【C++】

2.1、作用

2.2、文法

2.3、示例

2.4、注意事項及總結

1、switch語句【C語言】

菜鳥教程 C語言 switch語句:https://www.runoob.com/cprogramming/c-switch.html
一個 switch 語句允許測試一個變量等于多個值時的情況。每個值稱為一個 case,且被測試的變量會對每個 switch case 進行檢查。

1.2、C語言中 switch語句的文法

switch (expression) {
    case constant-expression :
       statement(s);
       break; /* 可選的 */
    case constant-expression :
       statement(s);
       break; /* 可選的 */
    /* 您可以有任意數量的 case 語句 */
    default : /* 可選的 */
       statement(s);
}
           

1.3、switch語句遵循規則

switch語句必須遵循下面的規則:
  • switch 語句中的 expression 是一個常量表達式,必須是一個整型或枚舉類型。
  • 在一個 switch 中可以有任意數量的 case 語句。每個 case 後跟一個要比較的值和一個冒号。
  • case 的 constant-expression 必須與 switch 中的變量具有相同的資料類型,且必須是一個常量或字面量。
  • 當被測試的變量等于 case 中的常量時,case 後跟的語句将被執行,直到遇到 break 語句為止。
  • 當遇到 break 語句時,switch 終止,控制流将跳轉到 switch 語句後的下一行。
  • 不是每一個 case 都需要包含 break。如果 case 語句不包含 break,控制流将會 繼續 後續的 case,直到遇到 break 為止。
  • 一個 switch 語句可以有一個可選的 default case,出現在 switch 的結尾。default case 可用于在上面所有 case 都不為真時執行一個任務。default case 中的 break 語句不是必需的。

1.3、switch流程圖

C語言/C++【switch語句詳解(用法、規則、流程圖、執行個體)】1、switch語句【C語言】2、switch語句【C++】

1.4、switch執行個體

C語言/C++【switch語句詳解(用法、規則、流程圖、執行個體)】1、switch語句【C語言】2、switch語句【C++】
#include <stdio.h>

int main()
{
    char grade = 'B'; /* 局部變量定義 */
    switch (grade)
    {
        case 'A':
            printf("很棒!\n");
            break;
        case 'B':
        case 'C':
            printf("做得好!\n");
            break;
        case 'D':
            printf("您通過了!\n");
            break;
        case 'F':
            printf("最好再試一下!\n");
            break;
        default:
            printf("無效的成績!\n");
    }
    printf("您的成績是 %c!\n", grade);
    return 0;
}
           

2、switch語句【C++】

2.1、作用

執行多條件分支語句。

2.2、文法

switch (表達式) //【switch語句中表達式類型隻能是整型或者字元型】
{
    case 結果1: 執行語句;break;
    case 結果2: 執行語句;break;
    ...
    default: 執行語句;break;
}
           

2.3、示例

C語言/C++【switch語句詳解(用法、規則、流程圖、執行個體)】1、switch語句【C語言】2、switch語句【C++】
#include <iostream>
using namespace std;

int main() //switch語句
{
	//請給電影進行評分
	// 10 ~ 9   經典
	// 8 ~ 7   非常好
	// 6 ~ 5   一般
	// 5分以下 爛片

	//1、提示使用者給電影評分
	cout << "請給電影打分:" << endl;

	//2、使用者開始進行打分
	int score = 0;
	cin >> score;
	cout << "您打的分數為:" << score << endl;

	//3、根據使用者輸入的分數來提示使用者最後的結果
	switch (score)
	{
	case 10:
		// cout << "您認為是經典電影!" << endl;
		// break; //退出目前分支
	case 9:
		cout << "您認為是經典電影!" << endl;
		break; //退出目前分支
	case 8:
		// cout << "您認為電影非常好!" << endl;
		// break;
	case 7:
		cout << "您認為電影非常好!" << endl;
		break;
	case 6:
	case 5:
		cout << "您認為電影一般!" << endl;
		break;
	default:
		cout << "您認為是爛片!" << endl;
		break;
	}

	//if和switch差別?
	//switch缺點:判斷時候隻能是整型或者字元型,不可以是一個區間!
	//switch優點:結構清晰,執行效率高!

	system("pause");

	return 0;
}
           

2.4、注意事項及總結

  • 注意1:switch語句中表達式類型隻能是整型或者字元型。
  • 注意2:case裡如果沒有break,那麼程式會一直向下執行。
  • 總結:與if語句比,對于多條件判斷時,switch的結構清晰,執行效率高,缺點是switch不可以判斷區間。

繼續閱讀