【问题标题】:Homework Help: Max and min value with if statements作业帮助:使用 if 语句的最大值和最小值
【发布时间】:2013-10-28 15:07:58
【问题描述】:

如何获得三个数字的最小值和最大值,只使用三个 If 语句(没有其他)并且没有任何循环? 我有以下代码,它只给了我最大值:

            max = a;
            min = a;

            if (b > max)
            {
                max = b;
            }
            if (c > max)
            {
                max = c;
            }

我怎样才能用另外一个 if 语句来获得最小值?

【问题讨论】:

  • 让我想起了这个问题。交换两个变量而不使用第三个。当然可以,但是为什么要编写令人困惑的代码呢?只需使用第三个变量。
  • 为什么,为什么,为什么? C# 和所有语言一样都有内置函数。使用系统;使用 System.Linq;类程序 { static void Main() { int[] array1 = { 1, -1, -2, 0 }; // 找到最大数量。 Console.WriteLine(array1.Max()); } }
  • @JasonEnochs - 一种可能性是了解合并排序的工作原理。对于少量项目(2-4)内联最小值/最大值也可能会更快一些......但通常 - 在家庭作业/热身面试问题之外没有用。
  • @JasonEnochs 因为这是家庭作业:/。我希望这里禁止家庭作业。每个人都向他们发送垃圾邮件以获得赞成票。没有人会学习,这些问题不适用于人们会用谷歌搜索的任何东西。他们正在污染无线电波,并在不教他们的情况下帮助人们完成学校。

标签: c# if-statement max min


【解决方案1】:

你可以使用else吗?

max = a;
min = a;

if (b > max)
{
    max = b;
}
else
{
    min = b;
}
if (c > max)
{
    max = c;
}
if (c < min)
{
    min = c;
}

【讨论】:

  • 他说不能用else
  • 好点,我完全错过了这个问题。这么多,请仔细阅读...
【解决方案2】:
int a = 10, b = 20, c=30;

int max = a, min = b;

if ( a < b )
{
    min = a;
    max = b;
}

if ( c < min )
   min = c;
if ( c > max )
   max = c;

它恰好有三个逻辑 if 来确定最大值和最小值。我希望这会有所帮助。

【讨论】:

  • 很高兴你打败了我,但这看起来不像是家​​庭作业:)
  • 我同意。这绝对是一项任务
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2016-10-12
  • 2018-03-03
  • 1970-01-01
  • 2011-06-13
  • 2013-12-04
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多