C#流程控制语句--分支语句(if,switch,三位运算符)
分支语句:判断结构要求程序员指定一个或多个要评估或测试的条件,以及条件为真时要执行的语句(必需的)和条件为假时要执行的语句(可选的)。
分支语句 if
if(判断条件表达式)
{//表达式结果为ture时执行}
else
{//表达式结果为false时执行}
For example
Console.WriteLine("请输入一个数字:"); int iInput = Convert.ToInt32(Console.ReadLine());//记录用户的输入 if (iInput % 2 != 0)//使用if语句进行判断 { Console.WriteLine(iInput + " 是一个奇数!"); } Console.ReadLine();
Console.WriteLine("请输入你的分数:"); int score = Convert.ToInt32(Console.ReadLine()); //记录用户的输入 if (score > 90) //判断输入是否大于90 { Console.WriteLine("你非常优秀!"); } else //不大于90的情况 { Console.WriteLine("希望你继续努力!"); } Console.ReadLine();
int YouAge = 0; //声明一个int类型的变量YouAge,值为0 Console.WriteLine("请输入您的年龄:"); YouAge = int.Parse(Console.ReadLine()); //获取用户输入的数据 if (YouAge <= 18) //调用if语句判断输入的数据是否小于等于18 { //如果小于等于18则输出提示信息 Console.WriteLine("您的年龄还小,要努力奋斗哦!"); } else if (YouAge > 18 && YouAge <= 30) //判断是否大于18岁小于30岁 { //如果输入的年龄大于18岁并且小于30岁则输出提示信息 Console.WriteLine("您现在的阶段正是努力奋斗的黄金阶段!"); } else if (YouAge > 30 && YouAge <= 50) //判断输入的年龄是否大于30岁小于等于50岁 { //如果输入的年龄大于30岁而小于等于50岁则输出提示信息 Console.WriteLine("您现在的阶段正是人生的黄金阶段!"); } else { Console.WriteLine("最美不过夕阳红!"); } Console.ReadLine();
Console.WriteLine("请输入一个年份:"); int iYear = Convert.ToInt32(Console.ReadLine()); //记录用户输入的年份 if (iYear % 4 == 0) //四年一闰 { if (iYear % 100 == 0) { if (iYear % 400 == 0) //四百年再闰 { Console.WriteLine("这是闰年"); } else //百年不闰 { Console.WriteLine("这不是闰年"); } } else { Console.WriteLine("这是闰年"); } } else { Console.WriteLine("这不是闰年"); } Console.ReadLine();
分支语句 switch
switch{表达式}
{
case常量表达式:条件语句;
case常量表达式:条件语句;
case常量表达式:条件语句;
default:条件语句;
}
For example
//输出提示问题 Console.WriteLine("请输入要查询的录取分数线(比如民办本科、艺术类本科、体育类本科、二本、一本)"); string strNum = Console.ReadLine();//获取用户输入的数据 switch (strNum) { case "民办本科"://查询民办本科分数线 Console.WriteLine("民办本科录取分数线:350"); break; case "艺术类本科"://查询艺术类本科分数线 Console.WriteLine("艺术类本科录取分数线:290"); break; case "体育类本科"://查询体育类本科分数线 Console.WriteLine("体育类本科录取分数线:280"); break; case "二本"://查询二本分数线 Console.WriteLine("二本录取分数线:445"); break; case "一本"://查询一本分数线 Console.WriteLine("一本录取分数线:555"); break; default://如果不是以上输入,则输入错误 Console.WriteLine("您输入的查询信息有误!"); break; } Console.ReadLine();
{ double x, price, discount, money; //x:加油量,price:价格,discount:折扣,money:应付金额 int y; //燃用油种类 char z; //服务等级 Console.WriteLine("------欢迎光临------"); Console.WriteLine(); Console.WriteLine("请选择汽车燃料的种类"); Console.WriteLine(); Console.WriteLine(" 1:90号汽油 2:93号汽油 3:97号 汽油 0: 0号柴油"); y = Convert.ToInt32(Console.ReadLine()); //对输入的燃用油种类进行判定,输出其价格 switch (y) { case 1: price = 6.8; Console.WriteLine("您选择的是90号汽油,价格为:" + price + " 元/升"); break; case 2: price = 6.42; Console.WriteLine("您选择的是93号汽油,价格为:" + price + " 元/升"); break; case 3: price = 7.02; Console.WriteLine("您选择的是97号汽油,价格为:" + price + " 元/升"); break; case 0: price = 5.75; Console.WriteLine("您选择的是0号柴油,价格为:" + price + " 元/升"); break; default: Console.WriteLine("您输入的汽车然用油种类不正确。。。"); return; } //输入燃用油量 Console.WriteLine(); Console.WriteLine("请输入您要购买油的升数,例如 5.5 代表您想购买5.5升"); x = Convert.ToDouble(Console.ReadLine()); if (x <= 0) { Console.WriteLine("很抱歉,您输入的购买量有误!"); return; //主函数返回,程序结束,后面的语句将不再执行 } else { Console.WriteLine("您所要购买的燃用油量是:" + x + " 升"); } Console.WriteLine(); //输入等级服务 Console.WriteLine("请选择服务: A:自助加油 B:协助加油"); z = Convert.ToChar(Console.ReadLine()); switch (z) { case 'A': discount = 0.1; Console.WriteLine("您选择的是“自助加油”,优惠10%"); break; case 'B': discount = 0.05; Console.WriteLine("您选择的是“协助加油”,优惠5%"); break; default: Console.WriteLine("很抱歉,您所选择的等级服务有误!"); return; } Console.WriteLine(); money = x * price * (1 - discount); Console.WriteLine("您本次消费金额为:" + money); Console.WriteLine(); Console.WriteLine("------期待您的下次光临!------"); Console.ReadLine();
分支语句 三位运算符
条件表达式?表达式1:表达式2;
条件表达式(bool类型),true时执行表达1,flase时执行表达式2
//提示用户输入 Console。writeLine("请输入你需要比较的数值"); int num=int.Parse(Console.Readline()); Console.WriteLine(num<10?"你是输入的数值小于10":"你输入的数值大于等于10"); Console.ReadKey();
注:只能对int和string类型的变量使用switch语句 ,对于float和double类型只能用if语句。
其次不允许有两个case标签有相同的值,可以不写default语句,如果case标签都不符合这个变量,则直接执行switch语句之后的语句。
Copyright@libaichen 287944304@qq.com