發(fā)布于:2021-01-27 14:25:15
0
212
0
什么是switch?
switch語句有助于測試變量與一組值的相等性。每個被比較的值都稱為一個case。
將switch視為多路分支語句??梢愿鶕?jù)表達(dá)式的值將程序的執(zhí)行轉(zhuǎn)移到各個部分。
何時使用switch?
switch類似于if…else…if梯形圖。但是,它生成了一個更干凈、更易于理解的代碼。與if…else…if梯形圖相比,切換速度更快。當(dāng)需要將一個變量的值與一組其他值進(jìn)行比較時,請使用switch語句。
break關(guān)鍵字
break關(guān)鍵字在switch語句中使用。它防止代碼運(yùn)行到下一個案例中。它終止一個語句序列。
當(dāng)C++編譯器遇到一個中斷關(guān)鍵字時,switch的執(zhí)行終止,控制跳轉(zhuǎn)到切換語句之后的行。在switch中使用break語句是可選的。如果不使用,則繼續(xù)執(zhí)行下一個案例。
語法
switch語句的語法如下:
switch (variable)
{
case 1:
break;
case 2:
break;
default:
}
以上參數(shù)說明如下:
變量:這是要進(jìn)行比較的變量。
案例:案例語句很多。每種方法都將變量與不同的值進(jìn)行比較。
中斷:此關(guān)鍵字阻止執(zhí)行繼續(xù)到下一個case語句。
默認(rèn)值:這是可選的。它說明了應(yīng)該做什么,變量的值與任何情況都不匹配。
#includeusing namespace std;
int main()
{
int x = 20;
switch (x)
{
case 10:
cout<<"X is 10"; break;
case 20:
cout << "X is 20"; break;
case 30:
cout << "X is 30"; break;
default:
cout<<"X is not 10, 20 or 30"; break;
}
return 0;
}
輸出:
以下是代碼截圖:
代碼說明:
在我們的代碼中包含iostream頭文件。它將允許我們讀取和寫入控制臺。
包括std名稱空間,以便在不調(diào)用它的情況下使用它的類和函數(shù)。
調(diào)用main()函數(shù),其中應(yīng)添加程序邏輯。
標(biāo)記main()函數(shù)主體的開始。
聲明變量x并將其初始化為20。
使用switch語句并將參數(shù)x傳遞給它。這意味著我們需要將變量x的值與一組其他值進(jìn)行比較。
switch主體的標(biāo)記開始。
將變量x的值與10的值進(jìn)行比較。
如果上述情況為真,即x為10,則執(zhí)行的語句。中斷阻止執(zhí)行繼續(xù)到下一個案件。
比較變量x的值和20的值。
如果上述情況為真,即x為20,則執(zhí)行的語句。中斷阻止執(zhí)行繼續(xù)到下一個案件。
比較變量x的值和30的值。
如果上述情況為真,即x為30,則執(zhí)行的語句。中斷阻止執(zhí)行繼續(xù)到下一個案件。
如果變量x的值不是10、20或30,則默認(rèn)值幫助我們說明要執(zhí)行的操作。
如果上述情況不成立,即x不是10、20或30,則執(zhí)行的語句。
switch語句正文的結(jié)尾。
如果程序運(yùn)行正常,main()函數(shù)應(yīng)該返回一個值。
main()函數(shù)主體的結(jié)尾。
#includeusing namespace std;
int main() {
int choice;
cout << "Enter 1, 2 or 3: ";
cin >> choice;
switch (choice)
{
case 1:
cout << "Choice 1"; break;
case 2:
cout << "Choice 2"; break;
case 3:
cout << "Choice 3"; break;
default:
cout << "Not 1, 2 or 3"; break;
}
}
輸出:
以下是代碼截圖:
代碼說明:
在我們的代碼中包含iostream頭文件。它將允許我們讀取和寫入控制臺。
包括std名稱空間,以便在不調(diào)用它的情況下使用它的類和函數(shù)。
調(diào)用main()函數(shù),其中應(yīng)添加程序邏輯。{標(biāo)記main()函數(shù)主體的開始。
聲明名為choice的整數(shù)變量。
在控制臺上打印一些文本。
提示用戶輸入所選值。
使用switch語句并將參數(shù)選擇傳遞給它。這意味著我們需要將變量choice的值與一組其他值進(jìn)行比較。
switch體的{標(biāo)記開始。
比較變量選擇的值與1的值。
如果上述情況為真,即如果choice為10,則執(zhí)行的語句。中斷阻止執(zhí)行繼續(xù)到下一個案件。
比較變量選擇的值與2的值。
如果上述情況為真,即如果選項(xiàng)為2,則執(zhí)行的語句。中斷阻止執(zhí)行繼續(xù)到下一個案件。
比較變量選擇的值與3的值。
如果上述情況為真,即如果選項(xiàng)為3,則執(zhí)行的語句。中斷阻止執(zhí)行繼續(xù)到下一個案件。
如果variable choice的值不是1、2或3,則默認(rèn)值幫助我們說明要執(zhí)行的操作。
如果上述情況不正確,即如果選項(xiàng)不是1、2或3,則執(zhí)行的語句。
switch語句正文的結(jié)尾。
main()函數(shù)主體的結(jié)尾。
switch語句幫助我們創(chuàng)建一個簡單的if…else…if梯形圖。
與if…else…if梯形圖相比,switch語句的語法清晰而簡單。
當(dāng)您需要將一個變量的值與一組其他值進(jìn)行比較時,應(yīng)該使用switch語句。
這些值被添加到case語句中。
break關(guān)鍵字阻止執(zhí)行繼續(xù)到下一個案例。
如果沒有匹配的案例,則使用可選的默認(rèn)部分來說明要采取的操作。