。她我。难捌。。

條件語句2

知識(shí)點(diǎn)

switch語句

一鸦难、 switch語句

(一) 問題

1. 問題1

李四的年終工作評(píng)定,

如果定為A級(jí),則工資漲500元,

如果定為B級(jí),則工資漲200元,

如果定為C級(jí),工資不變,

如果定為D級(jí)工資降200元,

如果定為E級(jí)工資降500元.

設(shè)李四的原工資為5000,請(qǐng)用戶輸入李四的評(píng)級(jí),然后顯示李四來年的工資.

2. 使用條件語句解決

Console.WriteLine("請(qǐng)輸入對(duì)李四的年終評(píng)定");

string level = Console.ReadLine();//A B C D E 亂七八糟

double salary = 5000;

if (level == "A")

{

salary += 500;//salary=salary+500;

}

else if (level == "B")

{

salary += 200;

}

else if (level == "C")

{

// salary += 0;

}

else if (level == "D")

{

salary -= 200;

}

else if (level == "E")

{

salary -= 500;

}

else//輸入錯(cuò)誤

{

Console.WriteLine("輸入有誤根吁,程序退出!:媳巍击敌!");

}

Console.WriteLine("李四明年的工資是{0}", salary);

Console.ReadKey();

BUG****:

當(dāng)輸入亂七八糟的數(shù)據(jù)時(shí)候,Console.WriteLine("李四明年的工資是{0}", salary);這句代碼不執(zhí)行拴事。

bool b = true;

else//輸入錯(cuò)誤

{

Console.WriteLine("輸入有誤沃斤,程序退出!H邢衡瓶!");

b = false;

}

if (b)

{

Console.WriteLine("李四明年的工資是{0}", salary);

}

Console.ReadKey();

3. 問題2

對(duì)學(xué)員的結(jié)業(yè)考試成績(jī)?cè)u(píng)測(cè)

成績(jī) >= 90 :A

90 > 成績(jī) >= 80 :B

80 > 成績(jī) >= 70 :C

70 > 成績(jī) >= 60 :D

成績(jī) < 60 :E

4. 問題2解決

Console.WriteLine("請(qǐng)輸入你的考試成績(jī)");

int score = Convert.ToInt32(Console.ReadLine());

if (score >= 90)

{

Console.WriteLine("A");

}

else//<90

{

if (score >= 80)

{

Console.WriteLine("B");

}

else//<80

{

if (score >= 70)

{

Console.WriteLine("C");

}

else//<70

{

if (score >= 60)

{

Console.WriteLine("D");

}

else

{

Console.WriteLine("E");

}

}

}

}

(二) switch-case

對(duì)于判斷區(qū)間的語句,我們一般用if-else

對(duì)于定值的判斷牲证,我們一般用switch語句

1. 語法

switch(要判斷的變量或者表達(dá)式)

{

case 值1:要執(zhí)行的代碼;

break;

case 值2:要執(zhí)行的代碼;

break;

case 值3:要執(zhí)行的代碼;

break;

........

default:要執(zhí)行的代碼;

break;

}

2. 流程圖

[圖片上傳失敗...(image-847dde-1541554575870)]

3. 執(zhí)行過程

程序運(yùn)行到switch處哮针,

首先計(jì)算switch后面所帶的小括號(hào)中的變量或者表達(dá)式的值,拿著計(jì)算出來的這個(gè)結(jié)果跟每個(gè)case的值進(jìn)行匹配坦袍,一旦匹配成功十厢,則執(zhí)行該case所帶的代碼塊,

如果跟每個(gè)casa所帶的值都不匹配捂齐,則看當(dāng)前switch-csae結(jié)構(gòu)中是否有default蛮放,如果有default,則執(zhí)行default所帶的代碼塊奠宜,否則的話包颁,什么都不做。

4. switch-case解決

bool b = true;

Console.WriteLine("請(qǐng)輸入對(duì)李四的一個(gè)年終評(píng)定");

string level = Console.ReadLine();

double salary = 5000;

switch (level)

{

case "A": salary += 500;

break;

case "B": salary += 200;

break;

case "C": break;

case "D": salary -= 200;

break;

case "E": salary -= 500;

break;

default: Console.WriteLine("輸入有誤压真,程序退出C浣馈!榴都!");

b = false;

break;

}

if (b)

{

Console.WriteLine("李四明年的工資是{0}", salary);

}

Console.ReadKey();

(三) 練習(xí)

1. 作業(yè)1:練習(xí)1

Console.WriteLine("請(qǐng)輸入要計(jì)算的人的姓名");

string name = Console.ReadLine();

switch (name)

{

case "老楊":

Console.WriteLine("老楊上輩子是折翼的天屎");

break;

case "老蘇":

Console.WriteLine("老蘇上輩子是老鴇子");

break;

case "老鄒":

Console.WriteLine("老鄒上輩子是老蘇手下的頭牌");

break;

case "老虎":

Console.WriteLine("上輩子被武松掛了");

break;

case "老牛":

Console.WriteLine("上輩子是Cow");

break;

default:

Console.WriteLine("上輩子沒這個(gè)人");

break;

}

Console.ReadKey();

2. 練習(xí)2

對(duì)學(xué)員的結(jié)業(yè)考試成績(jī)?cè)u(píng)測(cè)(改成用Switch來做)

成績(jī) >= 90 :A

90 > 成績(jī) >= 80 :B

80 > 成績(jī) >= 70 :C

70 > 成績(jī) >= 60 :D

成績(jī) < 60 :E

Console.WriteLine("請(qǐng)輸入考試成績(jī)");

int score = Convert.ToInt32(Console.ReadLine());

switch (score / 10)

{

case 10://當(dāng)連續(xù)的幾個(gè)case中所帶的代碼一樣的時(shí)候待锈,可以省略前面的,只寫最后一個(gè)case中的代碼

case 9: Console.WriteLine("A");

break;

case 8: Console.WriteLine("B");

break;

case 7: Console.WriteLine("C");

break;

case 6: Console.WriteLine("D");

break;

default: Console.WriteLine("E");

break;

}

Console.ReadKey();

3. 作業(yè)2:練習(xí)3:請(qǐng)用戶輸年份,再輸入月份,輸出該月的天數(shù).

Console.WriteLine("請(qǐng)輸入一個(gè)年份");

int year = Convert.ToInt32(Console.ReadLine());

Console.WriteLine("請(qǐng)輸入一個(gè)月份");

int month = Convert.ToInt32(Console.ReadLine());

if (month >= 1 && month <= 12)

{

int day = 0;//存儲(chǔ)天數(shù)

switch (month)

{

case 1:

case 3:

case 5:

case 7:

case 8:

case 10:

case 12: day = 31;

break;

case 2:

if ((year % 400 == 0) || (year % 4 == 0 && year % 100 != 0))

{

day = 29;

}

else

{

day = 28;

}

break;

default: day = 30;

break;

}//swich

Console.WriteLine("{0}年{1}月有{2}天", year, month, day);

}//if

else

{

Console.WriteLine("月份必須在1~12月之間嘴高,程序退出8鸵簟:褪骸!");

}

二春瞬、 總結(jié):if-else if與switch的比較

(一) 相同點(diǎn):

都可以實(shí)現(xiàn)多分支結(jié)構(gòu)

(二) 不同點(diǎn):

(1) . if-else if:可以處理范圍

(2) . switch:一般 只能用于等值比較

(三) 三者的區(qū)別:

if有條件的執(zhí)行一條語句

if-else有條件的執(zhí)行一條或另一條語句

switch有條件的執(zhí)行一組語句中的一條語句

"???????

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末柴信,一起剝皮案震驚了整個(gè)濱河市,隨后出現(xiàn)的幾起案子宽气,更是在濱河造成了極大的恐慌随常,老刑警劉巖,帶你破解...
    沈念sama閱讀 211,265評(píng)論 6 490
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件萄涯,死亡現(xiàn)場(chǎng)離奇詭異绪氛,居然都是意外死亡,警方通過查閱死者的電腦和手機(jī)涝影,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 90,078評(píng)論 2 385
  • 文/潘曉璐 我一進(jìn)店門枣察,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人燃逻,你說我怎么就攤上這事序目。” “怎么了伯襟?”我有些...
    開封第一講書人閱讀 156,852評(píng)論 0 347
  • 文/不壞的土叔 我叫張陵猿涨,是天一觀的道長(zhǎng)。 經(jīng)常有香客問我姆怪,道長(zhǎng)叛赚,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 56,408評(píng)論 1 283
  • 正文 為了忘掉前任片效,我火速辦了婚禮红伦,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘淀衣。我一直安慰自己,他們只是感情好召调,可當(dāng)我...
    茶點(diǎn)故事閱讀 65,445評(píng)論 5 384
  • 文/花漫 我一把揭開白布膨桥。 她就那樣靜靜地躺著,像睡著了一般唠叛。 火紅的嫁衣襯著肌膚如雪只嚣。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 49,772評(píng)論 1 290
  • 那天艺沼,我揣著相機(jī)與錄音册舞,去河邊找鬼。 笑死障般,一個(gè)胖子當(dāng)著我的面吹牛调鲸,可吹牛的內(nèi)容都是我干的盛杰。 我是一名探鬼主播,決...
    沈念sama閱讀 38,921評(píng)論 3 406
  • 文/蒼蘭香墨 我猛地睜開眼藐石,長(zhǎng)吁一口氣:“原來是場(chǎng)噩夢(mèng)啊……” “哼即供!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起于微,我...
    開封第一講書人閱讀 37,688評(píng)論 0 266
  • 序言:老撾萬榮一對(duì)情侶失蹤逗嫡,失蹤者是張志新(化名)和其女友劉穎,沒想到半個(gè)月后株依,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體驱证,經(jīng)...
    沈念sama閱讀 44,130評(píng)論 1 303
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 36,467評(píng)論 2 325
  • 正文 我和宋清朗相戀三年恋腕,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了抹锄。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 38,617評(píng)論 1 340
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡吗坚,死狀恐怖祈远,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情商源,我是刑警寧澤车份,帶...
    沈念sama閱讀 34,276評(píng)論 4 329
  • 正文 年R本政府宣布,位于F島的核電站牡彻,受9級(jí)特大地震影響扫沼,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜庄吼,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 39,882評(píng)論 3 312
  • 文/蒙蒙 一缎除、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧总寻,春花似錦器罐、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,740評(píng)論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至祟印,卻和暖如春肴沫,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背蕴忆。 一陣腳步聲響...
    開封第一講書人閱讀 31,967評(píng)論 1 265
  • 我被黑心中介騙來泰國打工颤芬, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人。 一個(gè)月前我還...
    沈念sama閱讀 46,315評(píng)論 2 360
  • 正文 我出身青樓站蝠,卻偏偏與公主長(zhǎng)得像汰具,于是被迫代替她去往敵國和親。 傳聞我的和親對(duì)象是個(gè)殘疾皇子沉衣,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 43,486評(píng)論 2 348

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

  • 條件語句2 知識(shí)點(diǎn) switch語句 一郁副、 switch語句 (一) 問題 1. 問題1 李四的年終工作評(píng)定, 如...
    拾起_518閱讀 488評(píng)論 0 0
  • 知識(shí)點(diǎn): 注:int類型默認(rèn)32位有大小范圍 且第一位為符號(hào)位 0 為正 1 為負(fù) 8.4作業(yè) A:1、風(fēng)力預(yù)警系...
    cGunsNRoses閱讀 1,090評(píng)論 0 0
  • 1豌习、(*)編寫一個(gè)程序存谎,要求用戶從鍵盤輸入2個(gè)float數(shù)據(jù),輸出最大者.floata=float.Parse(C...
    Unity開發(fā)閱讀 943評(píng)論 0 0
  • using System; using System.Collections.Generic; using Sys...
    PANGTIANLONG閱讀 292評(píng)論 0 0
  • 勁牌公司作為酒行業(yè)內(nèi)的知名企業(yè)既荚,除了在產(chǎn)品上的創(chuàng)新,很多細(xì)節(jié)問題也都會(huì)嚴(yán)格把控栋艳。為了更安全恰聘、更合理地開展生產(chǎn),近日...
    biu_d14e閱讀 144評(píng)論 0 0