0

所以我正在做一个小计算器作为练习。比我注意到我不知道如何告诉 C# 只选择输入的两个最高数字并忽略其余数字。有人可以帮我解决这个问题吗?

示例:
textBox1输入9
textBox2输入5
textBox3输入7

我想得到两个最高的数字。

4

2 回答 2

2

不知道这对你有没有帮助...

private static int addHighestTwo(IEnumerable<int> source)
{
    var sorted = new List<int>(source);
    sorted.Sort();
    return sorted[sorted.Count - 1] + sorted[sorted.Count - 2];
}

在您的情况下,获取intTextboxes 中 Text 的值(提示:Int32.TryParse),然后像这样调用此方法addHighestTwo(new[] {valueFromTextBox1, valueFromTextBox2, valueFromTextBox3})

于 2013-02-28T15:11:10.123 回答
2

将数字放入列表中,如下所示(示例硬编码值):

        List<int> MyList = new List<int> { 3, 4, 6, 7, 9, 3, 4, 5, 5 };
        MyList = MyList.OrderByDescending(p => p).ToList();

然后获取列表中的前两个整数并将它们相加

int sum = MyList[0] + MyList[1];

只需确保添加验证,以便您在列表中至少有两个值。

于 2013-02-28T15:17:49.673 回答