C# switch-case


一、作用

用來處理多條件的定值的判斷。

二、語法

switch(變量或者表達式的值)

{
       case 值1:要執行的代碼;
       break;
       case 值2:要執行的代碼;
       break;
       case 值3:要執行的代碼;
       break;
       ..........
       default:要執行的代碼;
       break;
}

執行過程:

  程序執行到switch處,首先將括號中變量或者表達式的值計算出來,然后拿着這個值依次跟每個case后面所帶的值進行匹配,一旦匹配成功,則執行該case所帶的代碼,執行完成后,遇到break。跳出switch-case結構。如果,跟每個case所帶的值都不匹配。就看當前這個switch-case結構中是否存在default,如果有default,則執行default中的語句,如果沒有default,則該switch-case結構,什么都不做。

三、實例

【練習1】李四的年終工作評定,如果定為A級,則工資漲500元,  如果定為B級,則工資漲200元,如果定為C級,工資不變,如果定為D級工資降200元,如果定為E級工資降500元.設李四的原工資為5000,請用戶輸入李四的評級,然后顯示李四來年的工資.

            bool b = true;
            double salary = 5000;
            Console.WriteLine("請輸入李四的年終評定(A、B、C、D、E)");//A、B、C、
             D、E
            string level = Console.ReadLine();
 
            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("輸入的有誤,請重新輸入");
                    b = false;
                    break;
            }
            if (b)
            {
                Console.WriteLine("李四明年的工作是{0}元", salary);
            }
 
            Console.ReadKey();

【練習2】讓用戶輸入姓名,然后顯示出這個人上輩子是什么職業。

 Console.WriteLine("請輸入姓名,我們將顯示出來這個人上輩子的職業");
  string name = Console.ReadLine();
  //老楊,老蘇,老鄒,老馬,老虎,老牛
  switch (name)
  {
      case "老楊":
          Console.WriteLine("上輩子是抽大煙");
          break;
      case "老蘇":
          Console.WriteLine("上輩子是貴妃");
          break;
      case "老鄒":
          Console.WriteLine("上輩子是駙馬爺");
          break;
      case "老馬":
      case "老牛":
          Console.WriteLine("上輩子是農民");
          break;
 
      default:
          Console.WriteLine("不知道他上輩子是的職業");
          break;
  }
 
  Console.ReadKey();

  


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM