C# switch-case

执行过程:程序执行到switch处,首先将括号中变量或者表达式的值计算出来,
然后拿着这个值依次跟每个case后面所带的值进行匹配,一旦匹配成功,则执行
该case所带的代码,执行完成后,遇到break。跳出switch-case结构。
如果,跟每个case所带的值都不匹配。就看当前这个switch-case结构中是否存在
default,如果有default,则执行default中的语句,如果没有default,则该switch-case结构
什么都不做。

  1. using System;  
  2. using System.Collections.Generic;  
  3. using System.Linq;  
  4. using System.Text;  
  5. using System.Threading.Tasks;  
  6.   
  7. namespace _03switch_case  
  8. {  
  9.     class Program  
  10.     {  
  11.         static void Main(string[] args)  
  12.         {  
  13.             //李四的年终工作评定,如果定为A级,则工资涨500元,如果定为B级,  
  14.             //则工资涨200元,如果定为C级,工资不变,如果定为D级工资降200元,  
  15.             //如果定为E级工资降500元.  
  16.             //设李四的原工资为5000,请用户输入李四的评级,然后显示李四来年的工资  
  17.             bool b = true;  
  18.             double salary = 5000;  
  19.             Console.WriteLine("请输入对李四的年终评定");//a b c d e  乱七八糟  
  20.             string level = Console.ReadLine();  
  21.   
  22.             //switch(变量或者表达式的值)  
  23.             //{  
  24.             //    case 值1:要执行的代码;  
  25.             //    break;  
  26.             //    case 值2:要执行的代码;  
  27.             //    break;  
  28.             //    case 值3:要执行的代码;  
  29.             //    break;  
  30.             //    ..........  
  31.             //    default:要执行的代码;  
  32.             //    break;  
  33.             //}  
  34.             switch (level)  
  35.             {  
  36.                 case "A": salary += 500;  
  37.                     break;  
  38.                 case "B": salary += 200;  
  39.                     break;  
  40.                 case "C"break;  
  41.                 case "D": salary -= 200;  
  42.                     break;  
  43.                 case "E": salary -= 500;  
  44.                     break;  
  45.                 default: Console.WriteLine("输入有误,程序退出");  
  46.                     b = false;  
  47.                     break;  
  48.             }  
  49.             if (b)  
  50.             {  
  51.                 Console.WriteLine("李四明年的工资是{0}元", salary);  
  52.             }  
  53.             Console.ReadKey();  
  54.   
  55.   
  56.             //ctrl+k+s  
  57.             #region if else-if的做法  
  58.             //if (level == "A")  
  59.             //{  
  60.             //    salary += 500;//salary=salary+500;  
  61.             //}  
  62.             //else if (level == "B")  
  63.             //{  
  64.             //    salary += 200;  
  65.             //}  
  66.             //else if (level == "C")  
  67.             //{  
  68.   
  69.             //}  
  70.             //else if (level == "D")  
  71.             //{  
  72.             //    salary -= 200;  
  73.             //}  
  74.             //else if (level == "E")  
  75.             //{  
  76.             //    salary -= 500;  
  77.             //}  
  78.             //else//输入的不是ABCDE其中之一  
  79.             //{  
  80.             //    Console.WriteLine("输入有误,程序退出");  
  81.             //    b = false;  
  82.             //}  
  83.             //if (b)  
  84.             //{  
  85.             //    Console.WriteLine("李四来年的工资是{0}", salary);  
  86.             //}   
  87.             #endregion  
  88.             Console.ReadKey();  
  89.   
  90.   
  91.             //0 0.5 1 1.5 2  
  92.   
  93.   
  94.         }  
  95.     }  
  96. }  
shashou47

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: