#region Switch作用
//switch(//变量)
//{
// //变量 == 常量 执行 case和break之间的代码
// case 常量;
// 满足条件执行的代码逻辑;
// break;
// case 常量;
// 满足条件执行的代码逻辑;
// break;
//case 可以有无数个
// default:
// 如果上面case的条件都不满足 就会执行 default中的代码
// break;
//}
注意 常量 只能写一个值 不能去写一个范围 不能写条件运算符 逻辑运算符;
switch 只判断变量是否等于某一个固定值!
///
int a = 3;
switch (a)
{
//case里面一定是常量
case 1:
Console.WriteLine("a等于1");
break;
case 2:
Console.WriteLine("a等于2");
break;
case 3:
Console.WriteLine("a等于3");
break;
default:
Console.WriteLine("什么条件都不满足,执行default中的内容");
break;
}
float f = 1.4f;
//一般配合枚举使用
//Enum
switch (f)
{
case 1.5f:
Console.WriteLine("f=1.5");
break;
default :
Console.WriteLine("f什么条件都不满足,执行default中的内容");
break;
}
#endregion
#region default可以省略
switch (f)
{
case 1.5f:
Console.WriteLine("f=1.5");
break;
default://default可以不写
Console.WriteLine("f什么条件都不满足,执行default中的内容");
break;
}
#endregion
#region 可以自定义常量
char c = 'A';
//1必须初始化 2不能修改
//关键字 const
//固定写法:
//const 变量类型 变量名 =初始值;
const char c2 = 'A';
switch (c)
{
case c2:
Console.WriteLine("C=A");
break;
default://default可以不写
Console.WriteLine("f什么条件都不满足,执行default中的内容");
break;
}
#endregion
#region 贯穿
//作用:满足某些条件时,做的事情是一样的 就可以使用贯穿
int AA = 1;
switch (AA)
{
//不屑case 后面break就叫贯穿
//满足 1 2 3 4其中一个条件 就会执行 之后代码
case 1: //下面没有break就自动执行下面代码
case 2: //等于1等与2结果都一样
case 3:
case 4:
//可以写N个语句
//并且可以嵌套使用
Console.WriteLine("是个数字");
if (AA==1)
{
switch (AA)
{
default:
break;
}
}
else
{
}
break;
default:
break;
}
#endregion
#region 习题
//唐老狮的工资是由基本工资+绩效决定的
//绩效说明:
//学生评价 很兴奋,则评定为A级,绩效工资500
//学生评价 很充实 则评定为B级,不加绩效工资
//学生评价 还好吧 则评定为C级,绩效工资扣300
//学生评价 难理解,则评定为D级,绩效工资扣500
//学生评价 枯燥泛味,则评定为E级,绩效工资扣800
//假设唐老狮的工资是4000
//请用户输入王老师的评级,并算出王老师的工资是多少?
//int TLSGZ = 4000;
//int TLSjbgz = 0;
//int A = 500; //string A = "很兴奋";
//int B = 0; //string B = "很充实";
//int C = -300; //string C = "还好吧";
//int D = -500; //string D = "难理解";
//int E = -800; //string E = "枯燥泛味";
//Console.WriteLine("请输入唐老师评级是(A/B/C/D/E):");
//string TLSJX = Console.ReadLine();
//switch (TLSJX)
//{
// case "A":
// TLSjbgz=TLSGZ-A; //唐老师基本工资=唐老师工资-A评级绩效工资
// Console.WriteLine("A评级下唐老师基本工资是:"+TLSjbgz);
// Console.WriteLine("在A评级下王老师工资是:"+(TLSjbgz+A));
// break;
// case "B":
// TLSjbgz=TLSGZ-B;
// Console.WriteLine("B评级下唐老师基本工资是:"+TLSjbgz);
// Console.WriteLine("在B评级下王老师工资是:"+(TLSjbgz+B));
// break;
// case "C":
// TLSjbgz=TLSGZ-C;
// Console.WriteLine("C评级下唐老师基本工资是:"+TLSjbgz);
// Console.WriteLine("在C评级下王老师工资是:"+(TLSjbgz+C));
// break;
// case "D":
// TLSjbgz=TLSGZ-D;
// Console.WriteLine("D评级下唐老师基本工资是:"+TLSjbgz);
// Console.WriteLine("在D评级下王老师工资是:"+(TLSjbgz+D));
// break;
// case "E":
// TLSjbgz=TLSGZ-E;
// Console.WriteLine("E评级下唐老师基本工资是:"+TLSjbgz);
// Console.WriteLine("在E评级下王老师工资是:"+(TLSjbgz+E));
// break;
// default:
// Console.WriteLine("评级无效");
// break;
//}
#endregion
#region 习题2
//小唐带了10元钱去星巴克买咖啡,三种型号选择:
//1=(中杯,¥5)
//2=(大杯,¥7)
//3=(超大杯,¥11)
//请用户输入选择的型号,如果钱够,则购买成功,并算出小王最后还剩多少钱?
//如果钱不够,则提示用户“钱不够,请换其他型号"
//int SHI = 10;
//int YI = 5;
//int ER = 7;
//int SAN = 11;
//Console.WriteLine("请选择购买型号:1/2/3");
//string xh =Console.ReadLine();
//switch (xh)
//{
// case "1":
// if (SHI>YI)
// {
// Console.WriteLine("购买成功,剩余:"+(SHI-YI));
// }
// else
// Console.WriteLine("钱不够,请换其他型号");
// break;
// case "2":
// if (SHI>ER)
// {
// Console.WriteLine("购买成功,剩余:"+(SHI-ER));
// }
// else
// Console.WriteLine("钱不够,请换其他型号");
// break;
// case "3":
// if (SHI>SAN)
// {
// Console.WriteLine("购买成功,剩余:"+(SHI-SAN));
// }
// else
// Console.WriteLine("钱不够,请换其他型号");
// break;
// default:
// Console.WriteLine("输入错误");
// break;
//}
#endregion
#region 习题3
//输入学生的考试成绩,如果
// 成绩>=90:A
//90 >成绩>= 80:B
//80 >成绩>= 70:C
//70 >成绩 >= 60:D
// 成绩< 60:E
//(使用switch语法完成)
//最后输出学生的考试等级
//在控制台输入一个 (0~9) 的数并显示为大写。如输入2,则显示二
//Console.WriteLine("输入0/1/2/3/4/5/6/7/8/9其中一个数,");
//int t3 = Convert.ToInt32(Console.ReadLine());
//switch (t3)
//{
// case 1:
// char b1 = '一';
// Console.WriteLine(b1);
// break;
// case 2:
// char b2 = '二';
// Console.WriteLine(b2);
// break;
// case 3:
// char b3 = '三';
// Console.WriteLine(b3);
// break;
// case 4:
// char b4 = '四';
// Console.WriteLine(b4);
// break;
// case 5:
// char b5 = '五';
// Console.WriteLine(b5);
// break;
// case 6:
// char b6 = '六';
// Console.WriteLine(b6);
// break;
// case 7:
// char b7 = '七';
// Console.WriteLine(b7);
// break;
// case 8:
// char b8 = '八';
// Console.WriteLine(b8);
// break;
// case 9:
// char b9 = '九';
// Console.WriteLine(b9);
// break;
// default:
// Console.WriteLine("不存在");
// break;
//}
//a = Convert.ToInt32('二');
//Console.WriteLine(a);
//int xd = 20108;
#endregion
#region 习题4
//输入学生的考试成绩,如果
// 成绩>=90:A
//90 >成绩>= 80:B
//80 >成绩>= 70:C
//70 >成绩 >= 60:D
// 成绩< 60:E
//(使用switch语法完成)
//最后输出学生的考试等级
Console.WriteLine("请输入学生考试成绩分数:");
int KSCJ = Convert.ToInt32(Console.ReadLine());
//bool sss3 = Convert.ToBoolean(Console.ReadLine());
//string CJ = "成绩";
int cj1 = KSCJ/10;
//bool sdf = KSCJ>=90;
switch (cj1)
{
case 0:
case 1:
case 2:
case 3:
case 4:
case 5:
Console.WriteLine(KSCJ);
Console.WriteLine("学生的考试: E级");
break;
case 6:
Console.WriteLine(KSCJ);
Console.WriteLine("学生的考试: D级");
break;
case 7:
Console.WriteLine(KSCJ);
Console.WriteLine("学生的考试: C级");
break;
case 8:
Console.WriteLine(KSCJ);
Console.WriteLine("学生的考试: B级");
break;
case 9:
Console.WriteLine(KSCJ);
Console.WriteLine("学生的考试: A级");
break;
default:
Console.WriteLine("输入错误");
break;
}
#endregion
C#Switch语句 #我的编程语言学习笔记
最新推荐文章于 2024-06-21 11:15:51 发布