c语言多种选,教你轻松学会C语言系列之——一种更简洁、更经典的选择结构
前文中,我們已經(jīng)講到了選擇結(jié)構(gòu)的使用語法。在多重條件選擇應(yīng)用場景中,有表示等值判斷的,也有表示區(qū)間范圍的應(yīng)用。本文,就來分享另外一種簡潔又經(jīng)典的選擇結(jié)構(gòu)。
關(guān)鍵單詞
switch([swit]轉(zhuǎn)變,改變)break([breik]終止,中斷)case([keis]實情,情況)default([di'f:lt]默認;預(yù)設(shè);預(yù)置)
基本語法
盡管多重條件結(jié)構(gòu)可以滿足我們實際的需求。但在實際應(yīng)用中,特殊是在可選擇的條件特別多的情況下,書寫if-else if結(jié)構(gòu)就顯得特別的繁瑣和麻煩。
因此,C語言又提供了一個專門用于處理多分支結(jié)構(gòu)的條件選擇語句。稱為switch語句,又稱開關(guān)語句。使用switch語句直接處理多個分支(當(dāng)然也包括兩個分支的選擇問題)。其語法結(jié)構(gòu)如下:
switch(表達式){case常量表達式1://執(zhí)行代碼塊1[break;]case常量表達式2://執(zhí)行代碼塊2case常量表達式n://執(zhí)行代碼塊n[default:]//執(zhí)行代碼塊n+1[ break;]}
中括號【】表示該項是可選的,可以省略不寫。也就是break、default等關(guān)鍵詞,根據(jù)實際情況書寫,可有可無。
基礎(chǔ)語法:從C語言開始學(xué)編程,為什么使用switch結(jié)構(gòu)及其語法
控制機制
其語句控制機制是:
首先,計算switch小括號內(nèi)表達式的值;
然后,與case的值相比較;匹配成功則執(zhí)行case內(nèi)的語言;當(dāng)所有case都匹配不上,則執(zhí)行default內(nèi)的語句。過程中,如果語句break,則終止switch語句的執(zhí)行,即跳出整個的switch結(jié)構(gòu)。
案例演示:從C語言開始學(xué)編程,通過經(jīng)典案例掌握switch結(jié)構(gòu)的基本用法
特別強調(diào)
1、break在switch-case語句中充當(dāng)“終結(jié)者”的角色,也就是說,只要在switch-case語句中遇到了break,程序就會馬上結(jié)束switch-case語句,而執(zhí)行后面的語句。
2、如果沒有break,則從匹配的標(biāo)簽開始,直到遇見break或者switch語句結(jié)束前的所有語句都會被執(zhí)行。
3、在C中switch后面括號內(nèi)的表達式必須是整形、字符型、或者枚舉類型。
4、每一個case的常量表達式的值必須不同,否則就會出現(xiàn)互相矛盾的現(xiàn)象。
5、default是可選的,類似于條件語句if-else中的else,default可以在switch中的任何位置出現(xiàn),不會影響程序運行。
6、除了空語句序列外,其他的case語句或者default語句執(zhí)行后,最好通過break來結(jié)束當(dāng)前switch語句。
綜合案例
猜拳游戲,是一個很經(jīng)典的互動游戲。在日常生活的各種娛樂場合,無論大人小孩都玩的不亦樂乎。
那么,如何與機器對決呢?用之前的多重條件結(jié)構(gòu)其實是可以實現(xiàn)的,但使用switch結(jié)構(gòu),會讓程序更簡潔。不同的場景使用哪種條件結(jié)構(gòu)更合適,這需要各位朋友在大量的練習(xí)后,自然而然就會明白了。
猜拳游戲具體實現(xiàn),可分如下幾步,具體參考視頻講解。
1、用戶出拳2、電腦隨機出拳3、判斷勝負
項目分析:從C語言開始學(xué)編程,已知年月,判斷該年該月有多少天?
至此,有關(guān)C語言中條件結(jié)構(gòu)的內(nèi)容就全部分享完畢。
舉報/反饋
總結(jié)
以上是生活随笔為你收集整理的c语言多种选,教你轻松学会C语言系列之——一种更简洁、更经典的选择结构的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 借助百度云API进行人脸识别
- 下一篇: c语言while找rn,STM32Fat