1、if else-if结构
作用:用来处理多条件的区间性的判断。
语法:
if(判断条件)
{
要执行的代码;
}
else if(判断条件)
{
要执行的代码;
}
else if(判断条件)
{
要执行的代码;
}
else if(判断条件)
{
要执行的代码;
}
…
else
{
要执行的代码;
}
执行过程;程序首先判断第一个if所带的小括号中的判断条件,如果条件成立,也就是返回一个true,则执行该if所带的大括号中的代码,执行完成后,立即跳出if else-if结构。如果第一个if所带的判断条件不成立,也就是返回一个false,则继续向下进行判断,依次的判断每一个if所带的判断条件,如果成立,就执行该if所带的大括号中的代码,如果不成立,则继续向下判断,如果每个if所带的判断条件都不成立,就看当前这个if else-if结构中是否存在else。如果有else的话,则执行else中所带的代码,如果没有else,则整个 if-else if神马都不做。else可以省略。
2、 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结构什么都不做。
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace _03switch_case
{
class Program
{
static void Main(string[] args)
{
//李四的年终工作评定,如果定为A级,则工资涨500元,如果定为B级,
//则工资涨200元,如果定为C级,工资不变,如果定为D级工资降200元,
//如果定为E级工资降500元.
//设李四的原工资为5000,请用户输入李四的评级,然后显示李四来年的工资
bool b = true;
double salary = 5000;
Console.WriteLine("请输入对李四的年终评定");//a b c d e 乱七八糟
string level = Console.ReadLine();
//switch(变量或者表达式的值)
//{
// case 值1:要执行的代码;
// break;
// case 值2:要执行的代码;
// break;
// case 值3:要执行的代码;
// break;
// ..........
// default:要执行的代码;
// break;
//}
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();
//ctrl+k+s
#region if else-if的做法
//if (level == "A")
//{
// salary += 500;//salary=salary+500;
//}
//else if (level == "B")
//{
// salary += 200;
//}
//else if (level == "C")
//{
//}
//else if (level == "D")
//{
// salary -= 200;
//}
//else if (level == "E")
//{
// salary -= 500;
//}
//else//输入的不是ABCDE其中之一
//{
// Console.WriteLine("输入有误,程序退出");
// b = false;
//}
//if (b)
//{
// Console.WriteLine("李四来年的工资是{0}", salary);
//}
#endregion
Console.ReadKey();
//0 0.5 1 1.5 2
}
}
}
692

被折叠的 条评论
为什么被折叠?



