精典示例——if语句嵌套

精典示例——if语句嵌套

精典示例1——提示用户名名和密码是否正确

    例1:提示用户输入用户名,然后再提示输入密码。如果用户名是"admin"并且密码是“888888”则提示正确,否则提示错误,如果用户名不是admin还提示用户名不存在。

    写法1:

[csharp] view plaincopyprint?
namespace 布尔表达式  
{  
    class Program  
    {  
        static void Main(string[] args)  
        {     
            //提示用户输入用户名,然后再提示输入密码,如果用户名是"admin"并且密码是“888888”则提示正确,否则提示错误。如果用户名不是admin还提示用户名不存在。  
            Console.WriteLine("请输入用户名:");  
            string userName = Console.ReadLine();  
  
            Console.WriteLine("请输入密码:");  
            string passWord = Console.ReadLine();  
            if (userName == "admin" && passWord == "888888")  
            {  
                Console.WriteLine("用户名和密码输入正确!");  
            }     
            else  
            {  
                Console.WriteLine("用户名、密码错误!");  
                if (userName != "admin")  
                {  
                    Console.WriteLine("用户名不存在!");  
                }  
            }  
            Console.ReadKey();  
        }  
    }  
}  

 

    写法2:

[csharp] view plaincopyprint?
namespace 布尔表达式  
{  
    class Program  
    {  
        static void Main(string[] args)  
        {     
            //提示用户输入用户名,然后再提示输入密码,如果用户名是"admin"并且密码是“888888”则提示正确,否则提示错误。如果用户名不是admin还提示用户名不存在。  
            Console.WriteLine("请输入用户名:");  
            string userName = Console.ReadLine();  
  
            Console.WriteLine("请输入密码:");  
            string passWord = Console.ReadLine();  
            if (userName == "admin" && passWord == "888888")  
            {  
                Console.WriteLine("用户名和密码输入正确!");  
            }     
            else  
            {  
                if (userName != "admin"&&passWord=="888888")  
                {  
                    Console.WriteLine("此用户名不存在!");  
                }  
                else  
                {  
                    if (userName=="admin"&&passWord != "888888")  
                    {  
                        Console.WriteLine("密码不正确!");  
                    }  
                    else  
                    {  
                        Console.WriteLine("用户名和密码都不正确!");  
                    }  
                }  
            }  
            Console.ReadKey();  
        }  
    }  
}  
 

问题分析

用户名(admin)

密码(888888)

提示信息

 √

用户名和密码输入正确!

×

密码不正确!

×

此用户名不存在!

×

×

用户名和密码都不正确!

 

精典示例2——提示用户名输入年龄,判断是否允许查看

    练习2:提示用户输入年龄.如果大于等于18.则告知用户可以查看.如果小于10岁,则告知不允许查看.如果大于等于10岁.则提示用户是否继续查看 (yes、no)·如果输入 的是yes则提示用户可以查看,否则提示不可以查看。(测试边界条件,-1,88888888888888888888888,aaaa。微软如狼似虎的Tester)

 

 

问题分析

条件

   提示信息

                   age>=18

                  可以查看                

                   age<10

                 不允许查看            

                             yes

 

       age>=10        no

 

                        输入其它

  继续查看

 

      不继续查看

 

   输入错误

 

 

 

代码示例:

[csharp] view plaincopyprint?
namespace 布尔表达式  
{  
    class Program  
    {  
        static void Main(string[] args)  
        {     
            //提示用户输入年龄.如果大于等于18.则告知用户可以查看.如果小于10岁,则告知不允许查看.如果大于等于10岁.则提示用户是否继续查看 (yes、no)·如果输入 的是yes则提示用户可以查看,否则提示不可以查看。  
            Console.WriteLine("请输入年龄:");  
            string strAge = Console.ReadLine();  
            int age = Convert.ToInt32(strAge);  
  
            if (age>=18)  
            {  
                Console.WriteLine("可以查看");  
            }  
            else if (age < 10)  
            {  
                Console.WriteLine("不允许查看");  
            }  
            else    //前两个条件已经将其他情况排除,所以不用再写else if(age>=10)  
            {  
                Console.WriteLine("是否继续查看(yes、no)?");  
              
                string isContinue=Console.ReadLine();  
                if (isContinue=="yes")  
                {  
                    Console.WriteLine("继续查看");  
                }  
                else if (isContinue == "no")  
                {  
                    Console.WriteLine("不继续查看");  
                }  
                else  
                {  
                    Console.WriteLine("输入错误!");  
                }  
            }  
            Console.ReadKey();  
        }  
    }  
}  

总结,上面的两个例子主要练习的是:

if语句的嵌套

变量名命名要用有意义的变量名(如例中的变量名strAge,isContinue)。

测试程序,每种分支都要测试一遍。

写注释(关键地方),这样代码看起来很清淅,易于别人读懂。

 

  • 0
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值