日期:2014-05-20  浏览次数:20793 次

求算法
如何计算中间数

1 5 3 最大数是5 最小数1 中间数是3

11 56 2 最大数56 最小数2 中间数11

11 88 11 最大数88,最小数11,中间数11

11 88 88 最大数88 最小数11, 中间数88 

最大数,最小数已经学会,但不知如何求得中间数

------解决方案--------------------
数组中本身就有Min()和Max()方法,还判断?
------解决方案--------------------
array.Sort()
中间=array[array.Length/2]
------解决方案--------------------
C# code


 int[] arr = new int[] { 2, 12, 32};
 arr.Sort();//排序
 decimal dd =(decimal)arr.Average();//平均值
 int dd1 = arr.Sum();//求和
 int dd2 = arr.Min();//最小值
 int dd3 = arr.Max();//最大值
 int dd4 = arr[1];//三个中,中间一个
//用得着什么if else?

------解决方案--------------------
List<Int32> num = new List<Int32>();
for (int i=0;i<3 ;i++ )
{
Console.WriteLine("请输入第{0}个数",i);
num.Add(int.Parse(Console.ReadLine()));
}
num.Sort();

Console.WriteLine("*************结果***********************");
Console.WriteLine(num.Min()+"<"+num[1]+"<"+num.Max());
Console.ReadLine();