现实生活中咱们,绝大多数状况下,咱们判断1个条件 并非说仅仅是要获得这个结果, 而是要根据这个结果作出不一样的反应,spa
可是比较表达式和逻辑表达式他们是用来判断1个或者多个条件是否成立的,那咱们怎么办咧? code
在代码中的需求.有1段代码不是非要执行,而是在知足某个条件的时候才执行.
若是不知足就不执行.
if结构的做用就是来实现这个需求的.blog
1.0 if的语法:字符串
if(bool表达式)
{
执行代码
}string
???什么是bool表达式: 表达式的结果若是是bool类型的 那么它就是1个bool表达式.
比较表达式 逻辑表达式都是bool表达式it
例如:class
//从键盘上输入一个值,若是这个值在区间[0,100]里,则加上1000,不然不加。最后输出结果。 Console.WriteLine("请输入1个值:"); string str = Console.ReadLine(); int num = int.Parse(str); if (num >= 0 && num <= 100) { num += 1000; } Console.WriteLine(num);
条件:语法
num >= 0 && num <= 100
b. 执行步骤
先计算bool表达式的结果.
若是结果为true 就执行if块中的代码.而后继续往下执行.
若是结果为flase 就跳过if块中的代码 往下执行.
c. 注意的细节:
if的小括弧中必须是1个bool表达式. 其余的类型是不行的.
d. 何时使用if结构?
若是有1段代码不是非要执行 只有在知足某个条件的时候执行 那么就可使用if结构.程序
又好比:密码
//请写1个程序 让用户输入密码 若是密码不是"888888" 就提示错误. 不然什么都不作. Console.WriteLine("请输入密码:"); string pwd = Console.ReadLine(); //何时才要将用户的输入转换为数值类型. 若是这个数据须要参与算术运算 或者 比较运算中的比大小. //若是是比相等 或者 不等 就没有必要转换了 由于字符串也能够比相等或者不等. if (pwd != "888888") { Console.WriteLine("密码错误"); } Console.WriteLine("OVER");
2.0 需求升级
if结构的缺点:
只能在条件成立的时候 执行指定的代码
新的需求:
条件成立执行1段代码 条件若不成立 要执行另外的1段代码.
if-else结构
??? 干吗的? 能够实现这样的需求: 条件成立执行1段代码 条件若不成立 要执行另外的1段代码.
a. 语法
if(bool表达式)
{
执行代码
}
else
{
执行代码;
}
b. 执行步骤.
计算bool表达式的结果.
若是结果为true。就执行if中的代码.不会执行else中的代码.
若是结果为false 就执行else中的代码 不会执行if中的代码.
各自执行完毕之后 就继续往下执行,.
c. 注意的细节.
1). if后面的小括弧中必须是1个bool表达式.
2). if和else是在一块儿的 中间不能插入任何代码.
3). if和else中的代码不可能都同时执行 也不可能都不执行. 由于bool表达式的而结果只有两个.
4) if的小括弧后面没有分号.
d. 总结
何时使用使用if-else结构.
咱们但愿 条件成立执行1段代码 条件若不成立 要执行另外的1段代码.
if(条件)
{
成立的时候执行的代码
}
else
{
不成立的时候执行的代码.
}
来来来走一个:
//请用户输入用户名和密码. 若是用户名是"admin"而且密码是"888888" 就提示 验证成功 不然就提示 验证失败 Console.WriteLine("请输入用户名:"); string userName = Console.ReadLine(); Console.WriteLine("请输入密码:"); string pwd = Console.ReadLine(); if (userName == "admin" && pwd == "888888") { Console.WriteLine("验证成功"); } else { Console.WriteLine("验证失败"); }
3.0 呵呵需求再次升级,(好像生活同样天天有新的需求!生活才好玩!)
if-else结构的缺点.
只能判断1个条件.
咱们新的需求: 须要判断多个条件.而且根据不一样的条件成立来执行不一样的代码.
if-else if-else结构.
a. 语法
if(bool表达式1)
{
执行代码
}
else if(bool表达式2)
{
执行代码
}
else if(bool表达式3)
{
执行代码
}
else
{
执行代码,.
}
执行步骤
从上到下的依次判断每1个bool表达式. 只要有1个为true,就执行其中的代码,执行完毕之后 当即结束整个结构.
若是判断的结果为false 再判断下1个bool表达式.
当全部的条件都不成立的时候 就执行else中的代码.
例如:
//输入土豪的儿子的成绩. 大于90分的话 咱们就奖励 保时捷. // 80-89 奔驰汽车 // 70-79 东风日产 // 60-69 拖拉机. // 30-59 打屁股 // 30如下 断绝父子关系!!!~~~. Console.WriteLine("请输入土豪的儿子的成绩:"); int score = Convert.ToInt32(Console.ReadLine());//99 if (score >= 90) { Console.WriteLine("奖励奔驰汽车..."); } else if (score >= 80) { Console.WriteLine("奖励保时捷汽车"); } else if (score >= 70) { Console.WriteLine("奖励东风日产"); } else if (score >= 60) { Console.WriteLine("奖励拖拉机..."); } else if (score >= 30) { Console.WriteLine("打屁股"); } Console.WriteLine("OVER");