C語言編程學習選擇結構之 switch條件語句

C語言是面向過程的,而C++是面向?qū)ο蟮?/p>

C和C++的區(qū)別:

C是一個結構化語言盒至,它的重點在于算法和數(shù)據(jù)結構酗洒。C程序的設計首要考慮的是如何通過一個過程,對輸入(或環(huán)境條件)進行運算處理得到輸出(或?qū)崿F(xiàn)過程(事務)控制)枷遂。

C++樱衷,首要考慮的是如何構造一個對象模型,讓這個模型能夠契合與之對應的問題域酒唉,這樣就可以通過獲取對象的狀態(tài)信息得到輸出或?qū)崿F(xiàn)過程(事務)控制矩桂。 所以C與C++的最大區(qū)別在于它們的用于解決問題的思想方法不一樣。之所以說C++比C更先進痪伦,是因為“ 設計這個概念已經(jīng)被融入到C++之中 ”侄榴。

C與C++的最大區(qū)別:在于它們的用于解決問題的思想方法不一樣雹锣。之所以說C++比C更先進,是因為“ 設計這個概念已經(jīng)被融入到C++之中 ”癞蚕,而就語言本身而言蕊爵,在C中更多的是算法的概念。那么是不是C就不重要了桦山,錯攒射!算法是程序設計的基礎,好的設計如果沒有好的算法恒水,一樣不行匆篓。而且,“C加上好的設計”也能寫出非常好的東西寇窑。

switch條件語句

小編推薦一個學C語言/C++的學習裙【 六九九,四七零箩张,五九六 】甩骏,無論你是大牛還是小白,是想轉(zhuǎn)行還是想入行都可以來了解一起進步一起學習先慷!裙內(nèi)有開發(fā)工具饮笛,很多干貨和技術資料分享!

switch 條件語句也是一種很常用的選擇語句论熙,和if條件語句不同福青,它只能針對某個表達式的值作出判斷,從而決定程序執(zhí)行哪一段代碼脓诡。例如无午,在程序中使用數(shù)字1~7來表示星期一到星期天,如果想根據(jù)某個輸入的數(shù)字來輸出對應中文格式的星期值祝谚,可以通過下面的一段偽代碼來描述:

//用于表示星期的數(shù)字

如果等于1,則輸出星期一

如果等于2,則輸出星期二

如果等于3,則輸出星期三

如果等于4,則輸出星期四

如果等于5,則輸出星期五

如果等于6,則輸出星期六

如果等于7,則輸出星期天

如果不是1~7,則輸出此數(shù)字為非法數(shù)字

對于上面一段偽代碼的描述宪迟,大家可能會立刻想到用剛學過的 if…else if…else語句來實現(xiàn),但是由于判斷條件比較多交惯,實現(xiàn)起來代碼過長次泽,不便于閱讀。這時就可以使用C語言中的switch語句來實現(xiàn)這種需求席爽。在switch語句中switch關鍵字后面有一個表達式意荤,case關鍵字后面有目標值,當表達式的值和某個目標值匹配時只锻,會執(zhí)行對應case下的語句玖像。接下來通過一段偽代碼來描述switch語句的基本語法格式,具體如下:

switch (表達式)

{

case 目標值1:

執(zhí)行語句1

break;

case 目標值2:

執(zhí)行語句2

break;

……

case 目標值n:

執(zhí)行語句n

break;

default:

執(zhí)行語句n+1

break;

}

在上面的語法格式中炬藤,switch語句將表達式的值與每個case中的目標值進行匹配御铃,如果找到了匹配的值碴里,就會執(zhí)行相應case后的語句,否則執(zhí)行default后的語句上真。其中咬腋,switch語句中的break關鍵字的作用是跳出switch語句即可。

接下來通過一個案例來實現(xiàn)根據(jù)數(shù)字輸出中文格式的星期的功能:

#include

int main()

{

int week = 5;

switch (week)

{

case 1:

printf("星期一");

break;

case 2:

printf("星期二");

break;

case 3:

printf("星期三");

break;

case 4:

printf("星期四");

break;

case 5:

printf("星期五");

break;

case 6:

printf("星期六");

break;

case 7:

printf("星期天");

break;

default:

printf("輸入的數(shù)字不正確...");

break;

}

return 0;

}

運行結果如圖所示:

小編推薦一個學C語言/C++的學習裙【 六九九睡互,四七零根竿,五九六 】,無論你是大牛還是小白就珠,是想轉(zhuǎn)行還是想入行都可以來了解一起進步一起學習寇壳!裙內(nèi)有開發(fā)工具,很多干貨和技術資料分享妻怎!

例中壳炎,由于變量week的值為5,整個switch語句判斷的結果滿足case 5的條件逼侦,因此打印“星期五”匿辩。程序中的 default 語句用于處理和前面的case都不匹配的情況,將第5行代碼替換為int week = 8榛丢,再次運行铲球。

輸出結果如圖下所示:

在使用switch語句的過程中,如果多個case條件后面的執(zhí)行語句是一樣的話晰赞,則該執(zhí)行語句只需書寫一次即可稼病,這是一種簡寫的方式。例如掖鱼,使用數(shù)字1~7來表示星期一到星期天然走,當輸入的數(shù)字為1、2锨用、3丰刊、4、5時視為工作日增拥,否則視為休息日啄巧,這時如果需要判斷一周中的某一天是否為工作日,就可以采用switch語句的簡寫方式掌栅,具體如例所示:

#include

int main()

{

int week = 2;

switch (week)

{

case 1:

case 2:

case 3:

case 4:

case 5:

//當 week 滿足值 1秩仆、2、3猾封、4澄耍、5 中任意一個時,處理方式相同

printf("今天是工作日 ");

break;

case 6:

case 7:

//當 week 滿足值 6、7 中任意一個時齐莲,處理方式相同

printf("今天是休息日 ");

break;

}

return 0;

}

運行結果如圖所示:

小編推薦一個學C語言/C++的學習裙【 六九九痢站,四七零,五九六 】选酗,無論你是大牛還是小白阵难,是想轉(zhuǎn)行還是想入行都可以來了解一起進步一起學習!裙內(nèi)有開發(fā)工具芒填,很多干貨和技術資料分享呜叫!

當變量week的值為1、2殿衰、3朱庆、4、5 中任意一個值時闷祥,處理方式相同娱颊,都會打印“今天是工作日”。同理凯砍,當變量week值為6维蒙、7中任意一個值時,打印“今天是休息日”果覆。

這些是C/C++能做的

服務器開發(fā)工程師、人工智能殖熟、云計算工程師局待、信息安全(黑客反黑客)、大數(shù)據(jù) 菱属、數(shù)據(jù)平臺钳榨、嵌入式工程師、流媒體服務器纽门、數(shù)據(jù)控解薛耻、圖像處理、音頻視頻開發(fā)工程師赏陵、游戲服務器饼齿、分布式系統(tǒng)、游戲輔助等

?著作權歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末蝙搔,一起剝皮案震驚了整個濱河市缕溉,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌吃型,老刑警劉巖证鸥,帶你破解...
    沈念sama閱讀 219,427評論 6 508
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異,居然都是意外死亡枉层,警方通過查閱死者的電腦和手機泉褐,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,551評論 3 395
  • 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來鸟蜡,“玉大人膜赃,你說我怎么就攤上這事【厍罚” “怎么了财剖?”我有些...
    開封第一講書人閱讀 165,747評論 0 356
  • 文/不壞的土叔 我叫張陵,是天一觀的道長癌淮。 經(jīng)常有香客問我躺坟,道長,這世上最難降的妖魔是什么乳蓄? 我笑而不...
    開封第一講書人閱讀 58,939評論 1 295
  • 正文 為了忘掉前任咪橙,我火速辦了婚禮,結果婚禮上虚倒,老公的妹妹穿的比我還像新娘美侦。我一直安慰自己,他們只是感情好魂奥,可當我...
    茶點故事閱讀 67,955評論 6 392
  • 文/花漫 我一把揭開白布菠剩。 她就那樣靜靜地躺著,像睡著了一般耻煤。 火紅的嫁衣襯著肌膚如雪具壮。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 51,737評論 1 305
  • 那天哈蝇,我揣著相機與錄音棺妓,去河邊找鬼。 笑死炮赦,一個胖子當著我的面吹牛怜跑,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播吠勘,決...
    沈念sama閱讀 40,448評論 3 420
  • 文/蒼蘭香墨 我猛地睜開眼性芬,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了剧防?” 一聲冷哼從身側響起批旺,我...
    開封第一講書人閱讀 39,352評論 0 276
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎诵姜,沒想到半個月后汽煮,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體搏熄,經(jīng)...
    沈念sama閱讀 45,834評論 1 317
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 37,992評論 3 338
  • 正文 我和宋清朗相戀三年暇赤,在試婚紗的時候發(fā)現(xiàn)自己被綠了心例。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 40,133評論 1 351
  • 序言:一個原本活蹦亂跳的男人離奇死亡鞋囊,死狀恐怖止后,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情溜腐,我是刑警寧澤译株,帶...
    沈念sama閱讀 35,815評論 5 346
  • 正文 年R本政府宣布,位于F島的核電站挺益,受9級特大地震影響歉糜,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜望众,卻給世界環(huán)境...
    茶點故事閱讀 41,477評論 3 331
  • 文/蒙蒙 一匪补、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧烂翰,春花似錦夯缺、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,022評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至佳恬,卻和暖如春润文,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背殿怜。 一陣腳步聲響...
    開封第一講書人閱讀 33,147評論 1 272
  • 我被黑心中介騙來泰國打工朗恳, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留皱蹦,地道東北人柒桑。 一個月前我還...
    沈念sama閱讀 48,398評論 3 373
  • 正文 我出身青樓淋样,卻偏偏與公主長得像刃跛,于是被迫代替她去往敵國和親贷币。 傳聞我的和親對象是個殘疾皇子衬浑,可洞房花燭夜當晚...
    茶點故事閱讀 45,077評論 2 355

推薦閱讀更多精彩內(nèi)容