选择语句(分支语句)——if else

Posted MrY的nn

tags:

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

每晚必备的作业时间,今儿有点晚了,现在这样生活紧张而充实,感觉回到了幸福的学生时代,可摆在面前的现实在提醒自己时刻不能松懈……跑偏了转回正题,今儿学的分支语句不多就几句,可是用了差不多一整天的时间来理解,吃透和熟悉……语句分类:顺序语句,选择语句(分支语句),循环语句

选择(分支语句)
if(){}
if(){}else{} 二选一;若if成立,则不去走else,;若if不成立,肯定走else

if(){}else if(){}else if(){}else{} 多选一
若if成立,那其他的所有都不去看
若if不成立,去看一下else if 成不成立

if的嵌套
if()
{
    if()
      {
       }
     else()
     {
      }

}

案例:

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

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)
{
Console.WriteLine (x);
if (y < z)
{
Console.WriteLine(y);
Console.WriteLine(z);
}
else//(y>z)
{
Console.WriteLine(z);
Console.WriteLine(y);
}
}
else if (y <x && y <z)
{
Console.WriteLine(y);
if (z < x)
{
Console.WriteLine(z);
Console.WriteLine(x);
}
else//(z>x)
{
Console.WriteLine(x);
Console.WriteLine(z);
}
}
else
{
Console.WriteLine(z);
if (x < y)
{
Console.WriteLine(x);
Console.WriteLine(y);
}
else//(x>y)
{
Console.WriteLine(y);
Console.WriteLine(x);
}

插入图片

技术分享

案例 2.

输入三个整数,xyz,最终以从小到大的方式输出
利用嵌套
用中间变量
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());
int zhong;

if (x < y && x < z)
{

     if (y < z)
      {
      }
   else//y>z
     {
         zhong = y;
         y = z;
         z = zhong;
     }
if (y < x && y < z)
     {
          zhong = x;
          x = y;
          y = zhong;

      if (y < z)
       {

        }
    else//(y>z )
      {
         zhong = y;
         y = z;
         z = zhong;

       }

 }
if (z < y && z < x)//(z<y&&z<x)
   {
      zhong = x;
      x = z;
      z = zhong;
      if (y < x)
      {
       zhong = x;
        x = y;
       y = zhong;

        }
      else //(y>x)
        {

        }

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

插入图片

技术分享

 

案例3.

相亲过程
女:你有房子吗?
若有—>,结婚吧;没有—>你有钱么?
若有—>,先买房子再结婚;
没有—>你有能力么?
有—>先赚钱再买房子再结婚
没有,拜拜

代码:

Console.Write("你有房子吗");
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("拜拜");
a = Console.ReadLine();
}

}

插入图片

技术分享

案例4

代码:

Console.Write("姓名:");
string a = Console.ReadLine();
Console.Write("成绩:");
double b = double.Parse(Console.ReadLine());
if (b >= 0 && b <= 100)
{
     if (b == 100)
     {
     Console.WriteLine("恭喜你" + a + ",满分通过!");
     }
     else if (b >= 80)
    {
    Console.WriteLine("" + a + ",你很优秀,继续保持");
    }
    else if (b >= 60)
    {
    Console.WriteLine("" + a + "成绩良好");
     }
    else if (b >= 50)
    {
    Console.WriteLine("" + a + "就差一点点,下次一定要及格");

    }
     else//b<50
     {
      Console.WriteLine("" + a + "你是笨蛋吗?");
      }
}
else
{
Console.WriteLine("您的输入有误");
}

插入图片

技术分享

 

案例5.判断方程ax*x+bx+c=0是否为一元二次方程以及它的根的情况

代码:

Console.WriteLine("求方程ax*x+bx+c=0");
Console.Write("请输入a=");
double a = double.Parse(Console.ReadLine());
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 (a == 0)//如果a=0,则不是一元二次方程
{
Console.WriteLine("不是一元二次方程");
}
else//(a!=0)
{
Console.WriteLine("是一元二次方程");
if (de >= 0)
{
double x1 = (-b + Math.Sqrt(de)) / (2 * a);
double x2 = (-b - Math.Sqrt(de)) / (2 * a);
if (de > 0)
{
Console.WriteLine("方程式有两个不同的实根");
Console.WriteLine("x1=" + (-b + Math.Sqrt(de)) / (2 * a) + " x2=" + (-b - Math.Sqrt(de)) / (2 * a));
}

else
{
Console.WriteLine("方程有两个相同的实根");
Console.WriteLine("x1=x2=" + (-b + Math.Sqrt(de)) / (2 * a));
}

}

else if (de < 0)
{
Console.WriteLine("方程没有实根");
}

Console.ReadLine();

}
}
}
}

插入图片

技术分享技术分享

 

技术分享

技术分享

 

今儿的所有案例,其实理顺了这些之间的逻辑关系,一点点敲下来并不难,可细节处理不好比如{}的多加或是缺失,就容易弄出一堆错误来要么就是没有错误可就是不能运行,说到底还是不熟练的原因,所以需多练。

以上是关于选择语句(分支语句)——if else的主要内容,如果未能解决你的问题,请参考以下文章

if…else语句嵌套if…ELSE语句和case语句实现分支选择的区别

3月7日 分支语句

9-分支选择

第三次作业——for 语句及分支结构else-if

分支语句

Java 分支结构 - if...else/switch