C#语句及案例

今天学习了,C#语句部分的分支语句,差点转不过弯来。

语句分类:

1.顺序语句

2.选择语句(分支语句)

3.循环语句

分支语句

(一)if(){}

             int a = 10;               按照顺序哪个if条件适合,执行哪个。
不合适就跳过执行下一个条件。
if (a < 11) { a++; } if(a>3) { a--; } Console.WriteLine(a);-----运算结果是10

(二)if(){}else{} 

            //若if成立,则不去走else--------二选一
            //若if不成立,则一定会走else
            int a = 10;
            if (a > 3)
            {
                a--;
            }
            else
            {
                a++;
            }
            Console.WriteLine(a);--------结果10

(三)if(){}else if(){} else if(){}else{}

            //若if成立,那其他的所有都不去看------多选一
            //若if不成立,去查看下一个else if成立不成立,若成立,剩下的全都不用看
            int a = 5;
            if (a > 10)
            {
                a++;
            }
            else if (a<=10&&a>0)------可以多个
            {
                a++;
            }
            else
            {
                a++;
            }

            Console.WriteLine(a);------结果6

(四)if的嵌套

            int a = 10;
            if (a < 100)
            {
                if (a > 3 && a < 20)
                {
                    a++;
                }
                else
                {
                    a--;
                }
            }
            else
            {
                a += 10;
            }
            Console.WriteLine(a);------结果11

 案例:

输入一个小于等于100的整数,判断:是小于10的,还是两位数,还是100。

            //分析输入的数是小于等于100的,还是其他。若是小于等于100的,再细分那三种情况。所以要用到嵌套。
            Console.Write("请您输入一个小于等于100的整数:");
            int a = int.Parse(Console.ReadLine());
            //先写出大的轮廓,再细分。排版要整齐。若是在没有错误情况下,排版不齐,可以删掉最下面的大括号,重新打上,可以自动排版。
            if(a<=100)
            {
                if(a<10)
                {
                    Console.Write("您输入的是一个小于10的数。");
                    
                }
                else if(a>=10&&a<100)
                {
                    Console.Write("您输入的是一个大于等于10且小于100的数。");
                
                }
                else
                {
                    Console.Write("您输入的是100。");
                
                }

            }
            else
            {
                Console.Write("您的输入有误。");
            
            }

案例:输入三个整数,xyz,最终以从小到大的方式输出。利用嵌套。

            //分析情况大体3种,x最小,y最小,z最小。每一种情况都确定最小值后,只要比较后两个就可以了。
            Console.Write("x=");
            int x = int.Parse(Console.ReadLine());
            Console.Write("y=");
            int y = int.Parse(Console.ReadLine());
            Console.Write("z=");
            int z = int.Parse(Console.ReadLine());
            //同样,先写大体的,再细分。
            if (x < y && x < z)//x最小
            {
                Console.WriteLine(x);
                if(y>z)
                {
                    Console.WriteLine(y);
                    Console.WriteLine(z);
                
                }
                else
                {
                    Console.WriteLine(z);
                    Console.WriteLine(y);
                }
            
            }
            else if (y < x && y < z)//y最小
            {
                Console.WriteLine(y);
                if(x<z)
                {
                    Console.WriteLine(x);
                    Console.WriteLine(z);
                }
                else
                {
                    Console.WriteLine(z);
                    Console.WriteLine(x);
                
                }

            }
            else//z最小
            {
                 Console.WriteLine(z);
                if(x<y)
                {
                    Console.WriteLine(x);
                    Console.WriteLine(y);
                }
                else
                {
                    Console.WriteLine(y);
                    Console.WriteLine(x);
            
            }

//两个数,将a的值给b,将b的值给a
//使用中间变量

int a = 2;
int b = 5;
int zhong = a;
a = b;
b = zhong;

//案例:输入三个整数,xyz,最终以从小到大的方式输出。
//结果必须按以下方式输出:
//Console.WriteLine(x);
//Console.WriteLine(y);
//Console.WriteLine(z);
//利用中间变量

            Console.WriteLine("请您输入x=");
            int x = int.Parse(Console.ReadLine());
            Console.WriteLine("请您输入y=");
            int y = int.Parse(Console.ReadLine());
            Console.WriteLine("请您输入z=");
            int z = int.Parse(Console.ReadLine());

            int zhong;

            if (x < y && x < z)//x最小
            {
                if(y<z)//正常输出,不用改
                {
                }
                else//z<y,y和z的值进行对调
                {
                    zhong = y;
                    y = z;
                    z = zhong;
                
                }
            }
            else if (y < x && y < z)//y最小,那么x与y的值要先对调,对调以后x又变最小,再y与z比
            {
                zhong=x;
                x=y;
                y=zhong;

                if(y<z)
                {
                }
                else
                {
                    zhong = y;
                    y = z;
                    z = zhong;
                
                }

            }
            else//z最小,那么x与z的值要先对调,对调后x又变最小,再次比对y和z
            {
                zhong = x;
                x = z;
                z = zhong;
                if(y<z)
                {
                }
                else
                {
                    zhong = y;
                    y = z;
                    z = zhong;
                }
            }

            Console.WriteLine(x);
            Console.WriteLine(y);
            Console.WriteLine(z);

            Console.ReadLine();


//相亲过程
//女:你有房子吗
//若有---结婚吧;没有---你有钱吗
//若有---先买房子在结婚
//没有---你有能力么
//有---先赚钱再买房子在结婚
//没有---拜拜

            Console.WriteLine("你有房子吗?");
            string a = Console.ReadLine();

            if(a=="")
            {
                Console.WriteLine("结婚吧");
           
            }

            else
            {
                Console.WriteLine("你有钱吗");
                a = Console.ReadLine();
            if(a=="")
            {
                Console.WriteLine("先买房子在结婚");
            }
            else
            {

                Console.WriteLine("你有能力吗");
                a = Console.ReadLine();
                if (a == "")
                {
                    Console.WriteLine("先赚钱再买房子在结婚");
                }
                else
                {
                    Console.WriteLine("拜拜");
                
                }

            }


            }

//ax*x+bx+c=0判断方程是否是一元二次方程,
//和根的情况。根据公式判断方程的根的状况,
//公式的值大于零有两个根,
//等于零有一个根,小于零没有根。

Console.WriteLine("判断方程是不是一元二次方程:");
            Console.WriteLine("ax^2+b*x+c=0");
            Console.WriteLine();
            Console.Write("请输入a=");
            double a = double.Parse(Console.ReadLine());

            if (a == 0)
            {
                Console.WriteLine("此方程不是一元二次方程!");
            }
            else//  a!=0
            {
                Console.Write("请输入b=");
                double b = double.Parse(Console.ReadLine());
                Console.Write("请输入c=");
                double c = double.Parse(Console.ReadLine());

                double de = b * b - 4 * a * c;

                if (de >= 0)
                {
                    if (de > 0)
                    {
                        Console.WriteLine("此方程有两个不同的实数根。");
                        double x1 = (-b + Math.Sqrt(de)) / (2 * a);
                        double x2 = (-b - Math.Sqrt(de)) / (2 * a);
                        Console.WriteLine("x1="+x1+",x2="+x2);
                    }
                    else//de==0
                    {
                        Console.WriteLine("此方程有两个相同的实数根。");
                        double x1 = (-b + Math.Sqrt(de)) / (2 * a);
                        Console.WriteLine("x1=x2=" + x1);
                    }
                }
                else  //de<0
                {
                    Console.WriteLine("方程没有实数根!");
                }
            }
原文地址:https://www.cnblogs.com/zhaimiaoer/p/5251964.html