zoukankan      html  css  js  c++  java
  • 关于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···用得比较多。但是必须要认识。

























  • 相关阅读:
    《WF编程》系列之 承载工作流:跟踪服务 Tracking Service
    C#中隐藏(new)和方法重写(override)和重载(overload)的区别
    一套完整自定义工作流的实现
    工作流规范
    新宇面试题
    c# 多态性
    SQL Join连接详解
    Minix安装及配置指南(转载)
    游戏开发的学习资料汇总
    error LNK2019: 无法解析的外部符号 __vsnprintf 问题的解决方法
  • 原文地址:https://www.cnblogs.com/big-lll/p/6432416.html
Copyright © 2011-2022 走看看