需求更大的--if条件判断

     现实生活中我们,绝大多数情况下,我们判断1个条件 并不是说仅仅是要得到这个结果, 而是要根据这个结果做出不同的反应,

但是比较表达式和逻辑表达式他们是用来判断1个或者多个条件是否成立的,那我们怎么办咧?    

在代码中的需求.有1段代码不是非要执行,而是在满足某个条件的时候才执行.
 如果不满足就不执行.
 if结构的作用就是来实现这个需求的.

 

1.0 if的语法:

if(bool表达式)
 {
 执行代码
 }

  ???什么是bool表达式: 表达式的结果如果是bool类型的 那么它就是1个bool表达式.
比较表达式 逻辑表达式都是bool表达式

例如:

 //从键盘上输入一个值,如果这个值在区间[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");

  

 

 

 



posted @ 2014-06-05 23:29  海域公園  阅读(212)  评论(0编辑  收藏  举报