黑马程序员————If语句

---------------------- ASP.Net+Android+IOS开发.Net培训、期待与您交流! ----------------------

 

顺序结构:程序从Main()函数进来,从上到下,一行一行的执行,不会发生跳跃。

分支结构:代码有条件的执行,有肯能会不执行。

If()语句:

If(判断条件):一般都为关系表达式或者为bool类型的值

{

代码;

}

执行过程:程序运行到if处,首先判断if后面小括号中的判断条件,如果条件为true,则执行if后面大括号中所带的代码,如果条件不成立,也就是为false,那么不会执行大括号中的代码。

注:有肯能一条代码都不会执行

例如:

Console.WriteLine("请输入用户名");
string userName = Console.ReadLine();
Console.WriteLine("请输入密码");
string userPwd = Console.ReadLine();
bool b = (userName == "admin") && (userPwd == "mypass");
if ((userName == "admin") && (userPwd == "mypass"))
            {
               Console.WriteLine("登陆成功");
            }
            Console.ReadKey();


If-else语句:

If(判断条件或者bool类型的值)

{

代码;

}

else

{

代码;

}

执行过程:首先判断if后面小括号中判断条件,如果条件成立,也就是为true,则执行if后面所带的大括号中的代码,如果条件不成立,也就是为false,则执行else中大括号中的代码,不执行if后面大括号中的代码。

注:最少都要执行一条代码。在if-else语句中,else永远都跟离它最近的那个if配对。

    对于那种多个区间条件进行判断的需求,我们使用if-else if语句实现。

例如:

Console.WriteLine("请输入数字a");
            int a = Convert.ToInt32(Console.ReadLine());
            Console.WriteLine("请输入数字b");
            int b = Convert.ToInt32(Console.ReadLine());
            Console.WriteLine("请输入数字c");
            int c = Convert.ToInt32(Console.ReadLine());
if (a > b)
            {
                if (a > c)
                {
                    Console.WriteLine("最大值是{0}", a);
                }
                else
                {
                    Console.WriteLine("最大值是{0}", c);
                }
            }
            else
            {
                if (b > c)
                {
                    Console.WriteLine("最大值是{0}", b);
                }
                else
                {
                    Console.WriteLine("最大值是{0}", c);
                }
            

If-else if语句:

If(判断条件)

{

代码;

}

else if(判断条件)

{

代码;

}

else if(判断条件)

{

代码;

}

[else]   可以省略

{}

执行过程:首先判断第一个if括号中的判断条件,如果成立,则执行第一个if大括号中的代码,执行完成后,则调跳出整个的if-else if语句。如果第一个if后面的判断条件不成立,那么继续执行第二个if里面的判断条件,如果成立的话,则执行第二个if中的代码,执行完成后,跳出整个if else if语句,如果每个if后面的判断条件都不成立,那么就看这个if else if语句中 有没有else,如果有else,则执行else中的代码,如果没有else,则什么都不做,直接跳出这if else if 语句。

例如:

            bool b = true;
            int money = 5000;
            Console.WriteLine("请输入李四的年终评定等级");
            string input = Console.ReadLine();
if (input == "A")
            {
                money += 500;
            }
            else if (input == "B")
            {
                money += 200;
            }
            else if (input == "C")
            {

            }
            else if (input == "D")
            {
                money -= 200;
            }
            else if (input == "E")
            {
                money -= 500;
            }
            else
            {
                Console.WriteLine("输入有误,请重新输入");
                b = false;
            }
            if (b)
            {
                Console.WriteLine("李四明年的工资是{0}", money);
            }

switch-case语句:

Switch(/变量)

{

Case 1:代码;break;

Case 2:代码;break;

Case 3:代码;break;

Default:代码;break;

}

执行过程:首先计算swith小括号中的值或者表达式的值,拿这个值去依次跟case后面的每个值进行匹配,一旦匹配成功,则执行该case中的代码,遇到break,跳出当前switch case结构。如果每个case都不匹配,则看当前的switch-case结构中有没有default,如果有default,则执行default中的代码,如果没有,则什么都不做。

注:不要忘记break 跳出switch-case结构用。

例如:

            bool b = true;
            int money = 5000;
            Console.WriteLine("请输入李四的年终评定等级");
            string input = Console.ReadLine();         
            switch (input)
            {
                case "A": money += 500;
                    break;
                case "B": money += 200;
                    break;
                case "C": break;
                case "D":
                    money -= 200;
                    break;
                case "E": money -= 500;
                    break;
                default: Console.WriteLine("输入错误,程序退出");
                    b = false;
                    break;
            }
            if (b)
            {
                Console.WriteLine("李四明年的工资是{0}", money);
            }
            Console.ReadKey();


Try-catch 捕获异常:

try

{

代码;

}

catch

{

代码;

}

执行过程:

如果try中的代码,出现了异常,则不会继续向下执行,直接跳到catch中执行catch中的代码,执行完成后,跳出try-catch

如果try中的代码,没有出现异常,则执行try中的代码,执行完成后,跳过catch,继续向下执行。

注:

(1)Trycatch中间不允许写任何的代码。

(2)如果try中的某一行代码出现了异常,那么正行代码后面的代码都不会被执行。

 例如:

            bool b = true;
            Console.WriteLine("请输入一个数字");
            int number = 0;
            try
            {
                number = Convert.ToInt32(Console.ReadLine());

            }
            catch
            {
                Console.WriteLine("输入有误,程序退出");
                b = false;
            }
            if (b)
            {
                Console.WriteLine("您刚刚输入的数字是{0}", number);
            }


 

----------------------ASP.Net+Android+IOS开发.Net培训、期待与您交流! ----------------------

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值