分支嵌套

Posted 斐雪

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了分支嵌套相关的知识,希望对你有一定的参考价值。

练习1

男士体重 = 身高 - 100 (+-3)
女士体重 = 身高 - 110 (+-3)
请输入性别:
请输入体重(kg):
请输入身高(cm):

您的体重非常标准/您需要减肥了/您需要补充营养

您距离标准体重还差xxx公斤

            //输入性别,体重和身高,判断是否是标准体重,不是那相差多少公斤,你的体重很标准/你需要减肥啦/你需要补充营养
            //用户输入性别,体重升高
            Console.Write("请输入性别(男/女):");
            string a = Console.ReadLine();
            Console.Write("请输入体重(kg):");
            decimal b = Convert.ToDecimal(Console.ReadLine());
            Console.Write("请输入身高(cm):");
            decimal c = Convert.ToDecimal(Console.ReadLine());


            //判断是否是标准体重并打印
            //男:体重=身高-100(+-3)
                // b =c-100(+-3) 
            //女:体重=身高-110(+-3)
               //b=c-100(+-3)
            if (a == "")//判断是男是女
            {
                decimal d = b - (c - (100));//与标准体重相差的
                if (d>3)
                {
                    Console.WriteLine("你需要减肥啦!");
                    Console.WriteLine("与标准体重相差:"+(d-3)+"kg");
               
                }
                else if (d<-3)
                {
                    Console.WriteLine("你需要补充营养!");
                    Console.WriteLine("与标准体重相差:" +( d+3) + "kg");
                }

                else if(d>=-3&&d<=3)
                {
                    Console.WriteLine("你的体重非常标准!");
                }


            }

            else
            {
                decimal d = b - (c - 110);
                if (d>3)
                {
                    Console.WriteLine("你需要减肥啦!");
                    Console.WriteLine("与标准体重相差:" + (d-3) + "kg");
                }

                else if (d<-3)
                {
                    Console.WriteLine("你需要补充营养!");
                    Console.WriteLine("与标准体重相差:" + (d+3) + "kg");
                }
                else if (d>=-3&&d<=3)
                {
                    Console.WriteLine("你的体重非常标准!");
                }
            }

            Console.Read();

运算结果

练习2

让用户输入年龄,如果小于18岁,那么提示“少儿不宜,你不能查看。”
如果大于18岁,那么提示“你可以查看,是否要看?(yes/no):”
当用户输入yes时,输出“查看成功”,否则输出“用户取消查看”。

            //输入用户年龄,判断是否大于18。如果大于,是否要看
            //输入用户年龄
            Console.Write("请输入年龄:");
            decimal age = Convert.ToDecimal(Console.ReadLine());

            //判断是否满18岁

            if (age >= 18)//是否大于18岁
            {
                Console.Write("你可以查看,是否查看(yes / no):");//确定满十八岁
                string b = Console.ReadLine();
                if (b=="yes")//是否查看
                {
                    Console.WriteLine("查看成功!");
                }
                else
                {
                    Console.WriteLine("用户取消查看。");
                }
            }

            else //不满十八岁
            {
                Console.WriteLine("少儿不宜,你不能查看。");
            }

            Console.ReadLine();

运算结果

练习3

24时转为12时
让用户输入一个 24时制的时间,比如:
请输入小时: 14
请输入分钟: 33

打印的结果为: 下午2点33分

            //24时转为12时,小时不能为负数,不能超过24.分钟不能为负数,不能超过60

            //用户输入一个24时制得时间

            Console.Write("请输入小时:");
            int a = Convert.ToInt32(Console.ReadLine());
            Console.Write("请输入分钟:");
            int b = Convert.ToInt32(Console.ReadLine());


            //判断是否输入错误,并打印
            if (a >= 0 && a < 24 )//小时输入正确
            {
                if (b > 0 && b < 60)//分钟输入正确
                {
                    if (a <= 12)
                    {
                        Console.WriteLine("上午"+a + "点:" + b + "分。");
                    }

                    else
                    {
                        int c = a - 12;
                        Console.WriteLine("下午"+c + "点:" + b + "分。");
                    }
                }
                else
                {
                    Console.WriteLine("分钟输入错误!");
                }
            }

            else
            {
                Console.WriteLine("小时输入错误!");
            }
            Console.ReadLine();

运算结果

练习4

让用户输入两个数,再让用户输入一个运算符,然后输出运算的结果

            //输入两个数,再输入一个运算符,然后输出结果

            //用户输出两个数
            Console.Write("请输入第一个数:");
            decimal a = Convert.ToDecimal(Console.ReadLine());
            Console.Write("请输入第一个数:");
            decimal b = Convert.ToDecimal(Console.ReadLine());
            Console.Write("请输入一个运算符:");
            string c = Console.ReadLine();

            //输入一个运算符
            if (c == "+" || c == "-" || c == "*" || c == "/" || c == "%")
            {
                if (c == "+")
                {
                    Console.WriteLine(a+b);
                }
                else if (c == "-")
                {
                    Console.WriteLine(a-b);
                }
                else if (c == "*")
                {
                    Console.WriteLine(a*b);
                }
                else if (c == "/")
                {
                    Console.WriteLine(a / b);
                }
                else if (c == "%")
                {
                    Console.WriteLine(a % b);
                }
            }
            else
            {
                Console.WriteLine("输入错误");
            }

            Console.ReadLine();

 

运算结果

练习5

你有房子吗?有,那结婚吧,没有,你有钱吗?有,先买房再结婚吧,没有,你又能力吗?有,先赚钱再买房再结婚吧,没有拜拜

             //输入你有房吗?有,那结婚吧。没有,那你有钱吗?有,那你先买房。没有,那你有能力吗?有,先赚钱再买房再结婚,没有,拜拜

            //用户输入
            Console.Write("你有房吗?(有/没有)");
            string a = Console.ReadLine();
            //判断,输出
            if (a == "")//有房
            {
                Console.WriteLine("那结婚吧。");
            }
            else
            {
                Console.Write("你有钱吗?");
                string b = Console.ReadLine();
                if (b == "")//有钱
                {
                    Console.WriteLine("先买房再结婚吧。");
                }
                else
                {
                    Console.Write("那你有能力吗?");
                    string c = Console.ReadLine();
                    if (c == "")//有能力
                    {
                        Console.WriteLine("那先赚钱再买房再结婚吧。");
                    }
                    else
                    {
                        Console.WriteLine("拜拜");
                    }
                }
            }


            Console.ReadLine();

运算结果

练习6

 让用户输入日期,判断输入的日期是否正确

0-9999,月1-12,日按照月份来,需要判断闰年
            //输入日期,判断日期是否正确
            //用户输入
            Console.Write("请输入年:");
            int a =Convert.ToInt32(Console.ReadLine());
            Console.Write("请输入月份:");
            int b = Convert.ToInt32(Console.ReadLine());
            Console.Write("请输入日期:");
            int c = Convert.ToInt32(Console.ReadLine());
            
            //判断是否正确
            //1-9999
            //能被4整除的大部分是闰年,能被100整除而不能被400整除的不是闰年,能被3200整除的不是闰年
            int d = a % 4, e=a%100, f =a%400, s=a%3200;
            if (a > 0 && a <= 9999)//年份输入正确
            {
                if (d != 0&& e != 0 && f != 0 || s == 0)//不是闰年
                {
                    if (b > 0 && b < 12)//月份输入正确
                    {

                        if ((c < 0) || (b == 2 && c > 28)
                            || ((b == 1 || b == 3 || b == 5 || b == 7 || b == 8 || b == 10 || b == 12) && (c > 31))
                            || ((b == 4 || b == 6 || b == 9 || b == 11) && (c > 30)))//日期输入不正确
                        {
                            Console.WriteLine("日期输入错误");
                        }

                        else
                        {
                            Console.WriteLine("你输的日期是:" + a + "" + b + "" + c + "");
                        }

                    }
                    else
                    {
                        Console.WriteLine("月份输入错误");
                    }
                }
                else
                {
                    if (b > 0 && b < 12)//月份输入正确
                    {

                        if ((c < 0) || (b == 2 && c > 29)
                            || ((b == 1 || b == 3 || b == 5 || b == 7 || b == 8 || b == 10 || b == 12) && (c > 31))
                            || ((b == 4 || b == 6 || b == 9 || b == 11) && (c > 30)))//日期输入错误
                        {
                            Console.WriteLine("日期输入错误");
                        }

                        else
                        {
                            Console.WriteLine("你输的日期是:" + a + "" + b + "" + c + "");
                        }

                    }
                    else
                    {
                        Console.WriteLine("月份输入错误");
                    }
                }
            }
            else
            {
                Console.WriteLine("年份输入错误");
            }

            Console.ReadLine();

运算结果

 

 

以上是关于分支嵌套的主要内容,如果未能解决你的问题,请参考以下文章

使用嵌套片段和动画对象

将片段添加到片段中(嵌套片段)

Android 动画嵌套片段

简化条件表达式

寻找支持嵌套开发分支的git工作流

Recyclerview 滚动在嵌套滚动视图中的片段中不起作用