C++ Switch 語(yǔ)句
使用 switch
語(yǔ)句選擇要執(zhí)行的多個(gè)代碼塊之一。
語(yǔ)法
switch(expression) {
case x:
// 代碼塊
break;
case y:
// 代碼塊
break;
default:
// 代碼塊
}
它的工作原理如下:
-
switch
表達(dá)式被評(píng)估一次 - 表達(dá)式的值與每個(gè)
case
的值進(jìn)行比較 - 如果找到匹配項(xiàng),則執(zhí)行關(guān)聯(lián)的代碼塊
-
break
和default
關(guān)鍵字是可選的
下面的示例使用星期幾的數(shù)字來(lái)計(jì)算星期幾的名稱:
示例
int day = 4;
switch (day) {
case 1:
cout << "Monday";
break;
case 2:
cout << "Tuesday";
break;
case 3:
cout << "Wednesday";
break;
case 4:
cout << "Thursday";
break;
case 5:
cout << "Friday";
break;
case 6:
cout << "Saturday";
break;
case 7:
cout << "Sunday";
break;
}
// 輸出 "Thursday"(星期四,對(duì)應(yīng) day 為 4)
break 關(guān)鍵字
當(dāng) C++ 遇到 break
關(guān)鍵字時(shí),它會(huì)跳出 switch
塊。這將停止更多代碼和 case
測(cè)試的執(zhí)行。
當(dāng)找到匹配項(xiàng)并完成工作時(shí),是時(shí)候休息一下了。不需要進(jìn)行更多的測(cè)試。
break
可以節(jié)省大量的執(zhí)行時(shí)間,因?yàn)樗昂雎浴绷?switch
塊中其余代碼的執(zhí)行。
default 關(guān)鍵字
default
關(guān)鍵字指定如果沒(méi)有 case
匹配時(shí)要運(yùn)行的一些代碼。
C++ While 循環(huán)
循環(huán)可以在達(dá)到指定條件時(shí)執(zhí)行一段代碼塊。
循環(huán)非常方便,因?yàn)樗鼈児?jié)省時(shí)間,減少錯(cuò)誤,并且使代碼更易讀。
C++ While 循環(huán)
while
循環(huán)通過(guò)一個(gè)指定條件為 true 時(shí)循環(huán)執(zhí)行代碼塊:
語(yǔ)法
while (condition) {
// 要執(zhí)行的代碼塊
}
在下面的示例中,只要變量(i)小于 5,循環(huán)中的代碼就會(huì)一遍又一遍地運(yùn)行:
示例
int i = 0;
while (i < 5) {
cout << i << "\n";
i++;
}
注意:不要忘記增加條件中使用的變量,否則循環(huán)將永遠(yuǎn)不會(huì)結(jié)束!
C++ Do/While 循環(huán)
do/while
循環(huán)是 while
循環(huán)的變體。這個(gè)循環(huán)會(huì)在檢查條件是否為 true 之前執(zhí)行一次代碼塊,然后只要條件為 true,就會(huì)重復(fù)執(zhí)行循環(huán)。
語(yǔ)法
do {
// 要執(zhí)行的代碼塊
} while (condition);
下面的示例使用了 do/while
循環(huán)。即使條件為 false,代碼塊也會(huì)至少執(zhí)行一次,因?yàn)樵跍y(cè)試條件之前會(huì)執(zhí)行代碼塊:
示例
int i = 0;
do {
cout << i << "\n";
i++;
} while (i < 5);
C++ For 循環(huán)
當(dāng)你確切知道你要循環(huán)執(zhí)行一段代碼的次數(shù)時(shí),使用 for
循環(huán)而不是 while
循環(huán):
語(yǔ)法
for (語(yǔ)句 1; 語(yǔ)句 2; 語(yǔ)句 3) {
// 要執(zhí)行的代碼塊
}
- 語(yǔ)句 1 在執(zhí)行代碼塊之前執(zhí)行一次。
- 語(yǔ)句 2 定義了執(zhí)行代碼塊的條件。
- 語(yǔ)句 3 在代碼塊執(zhí)行后執(zhí)行(每次)。
下面的示例將打印數(shù)字 0 到 4:
示例
for (int i = 0; i < 5; i++) {
cout << i << "\n";
}
示例解釋
- 語(yǔ)句 1 在循環(huán)開始前設(shè)置一個(gè)變量(
int i = 0
)。 - 語(yǔ)句 2 定義了循環(huán)運(yùn)行的條件(
i
必須小于 5)。如果條件為 true,則循環(huán)將重新開始,如果為 false,則循環(huán)將結(jié)束。 - 語(yǔ)句 3 每次代碼塊執(zhí)行后增加一個(gè)值(
i++
)。
另一個(gè)示例
此示例將只打印 0 到 10 之間的偶數(shù)值:
for (int i = 0; i <= 10; i = i + 2) {
cout << i << "\n";
}
嵌套循環(huán)
還可以在另一個(gè)循環(huán)中放置一個(gè)循環(huán)。這被稱為嵌套循環(huán)。
“內(nèi)部循環(huán)”將在“外部循環(huán)”的每次迭代中執(zhí)行一次:
// 外部循環(huán)
for (int i = 1; i <= 2; ++i) {
cout << "外部:" << i << "\n"; // 執(zhí)行 2 次
// 內(nèi)部循環(huán)
for (int j = 1; j <= 3; ++j) {
cout << " 內(nèi)部:" << j << "\n"; // 執(zhí)行 6 次(2 * 3)
}
}
foreach 循環(huán)
還有一個(gè)“foreach 循環(huán)”(在 C++ 版本 11(2011)中引入),它專門用于遍歷數(shù)組(或其他數(shù)據(jù)集)中的元素:
語(yǔ)法
for (類型 變量名 : 數(shù)組名) {
// 要執(zhí)行的代碼塊
}
以下示例使用“foreach 循環(huán)”輸出數(shù)組中的所有元素:
示例
int myNumbers[5] = {10, 20, 30, 40, 50};
for (int i : myNumbers) {
cout << i << "\n";
}
最后
為了方便其他設(shè)備和平臺(tái)的小伙伴觀看往期文章:
微信公眾號(hào)搜索:Let us Coding
,關(guān)注后即可獲取最新文章推送文章來(lái)源:http://www.zghlxwxcb.cn/news/detail-844182.html
看完如果覺(jué)得有幫助,歡迎點(diǎn)贊、收藏、關(guān)注文章來(lái)源地址http://www.zghlxwxcb.cn/news/detail-844182.html
到了這里,關(guān)于C++ While 和 For 循環(huán):流程控制全解析的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!