关于c#分支语句和分支嵌套还有变量的作用域。

分支语句: if....else if....else  

必须以 if  开头 后面加括号写入需要判断的内容。

举个栗子说明一下

if (bool类型(比较表达式))  //  他会判断括号内的条件是否成立
{
如果上面的条件成立,那么会执行这里面的代码,输出结果
}
else if (bool类型 (比较表达式))//  如果上一个 if  的条件不成立会 向下判断这里的条件是否成立,如果上一条成立的则不会判断这一条。
{
走这里的代码
}
else //只要上面条件都不成立,那么必走else里的代码//  如果上面的条件都不成立会直接走这一条。else后面不能写条件
{
走这里的代码并输出结果
}

else 对应的是它上面的第一个 if , 就像下面这个

if (条件)//  这里判断条件

{

}

else if(条件)//  如果不满足上一条走这里

{

}

if (条件1)//  这是又一个条件

{

}

else//  这里else 对应的是上面条件1的 if  ,就是如果不满足  条件1  ,就会来执行else。

{

}

如果第一个 if 满足了会跳过else if  但是遇到if  就会进行判断,如果不满足条件1,那么就会判断最后的else。

如果想让else判断第一个if和else if都不满足之后的条件,就要把 if(条件1)去掉或者放掉else if 的上面。

附上一个练习题

“请输入年份:”(1-9999)
“请输入月份:”(1-12)
“请输入日期:”(要判断大小月,判断闰年)
判断输入的时间日期是否正确

Console.Write("请输入年份:");
            int nianfen = Convert.ToInt32(Console.ReadLine());

            Console.Write("请输入月份:");
            int yuefen = Convert.ToInt32(Console.ReadLine());

            Console.Write("请输入日期:");
            int riqi = Convert.ToInt32(Console.ReadLine());

            if (1 <= nianfen && nianfen <= 9999)//年份输入1-9999
            {
                if (nianfen % 4 == 0 && nianfen % 100 != 0 || nianfen % 400 == 0)//如果是闰年
                {
                    if (yuefen == 2)//若等是二月份
                    {
                        if (riqi >= 1 && riqi <= 29)//如果有29号
                        {
                            Console.Write("正确");
                        }
                        else
                        {
                            Console.Write("错误");
                        }
                    }
                    else if (yuefen == 4 || yuefen == 6 || yuefen == 9 || yuefen == 11)//如果是偶数月
                    {
                        if (riqi >= 1 && riqi <= 30)
                        {
                            Console.Write("正确");
                        }
                        else
                        {
                            Console.Write("错误");
                        }
                    }
                    else//如果是奇数月
                    {
                        if (riqi >= 1 && riqi <= 31)
                        {
                            Console.Write("正确");
                        }
                        else
                        {
                            Console.Write("错误");
                        }
                    }

                }

                else if (nianfen>=1&&nianfen<=9999) //如果不是闰年,
                {

                    if (yuefen == 2 && riqi > 28)
                    {
                        Console.Write("错误");
                    }
                    if (yuefen == 2)//如果是二月
                    {

                        if (riqi >= 1 && riqi <= 28)
                        {
                            Console.Write("正确");
                        }
                    }
                    else if (yuefen == 4 || yuefen == 6 || yuefen == 9 || yuefen == 11)//如果是偶数月
                    {
                        if (riqi >= 1 && riqi <= 30)
                        {
                            Console.Write("正确");
                        }
                        else
                        {
                            Console.Write("错误");
                        }
                    }
                    

                   else//如果是奇数月    
                    {
                        if (riqi >= 1 && riqi <= 31)
                        {
                            Console.Write("正确");
                        }
                        else
                        {
                            Console.Write("错误");
                        }
                    }

                }

            }

            else
            {
                if (yuefen < 1 || yuefen > 12||nianfen<1||nianfen>9999||riqi<1||riqi>31)
                {
                    Console.Write("NO");
                }
            }


            Console.ReadLine();




这里再补充一个分支语句

switch(变量)
{
case 值:代码段;break;(break是跳出的意思)
case 值:代码段;break;
...
...
...
default:代码段;break;
(default可有可无,对应else)
}


这个分支语句比较小众,还是if····else···用得比较多。但是必须要认识。

























原文地址:https://www.cnblogs.com/big-lll/p/6432416.html