我想从键盘随意输入一个一维数组,判断他的最大值最小值,怎么从键盘读入呢?console.readline()是读字符串的,怎样读取数字呢?菜鸟求解答…
控制台按一次回车就输入一次字符串,简单的做法是输入“12 56 45 65 36 78 54”类似这样的结构,然后通过Console.ReadLine()获取到这个字符串后,按照空格分割,通过强制类型转换填充到int数组中。然后直接通过数组.Max()或者数组.Min()方法获取这一串数字的最大值和最小值。
方式很多,你可以在while循环中一行行读取,也可以每个数字用逗号分割,这样读取一行下来,自己用split分割成数组
根据下面函数获取数组中最大最小值即可。调用时候直接传数组范围一个float类型的变量
public float MaxOfList(float[] flotNum)
{
float maxValue = flotNum.ToArray().Max();
return maxValue;
}
public float MinOfList(float[] flotNum)
{
float minValue = flotNum.ToArray().Max();
for (int i = 0; i < flotNum.Length; ++i)
{
if ((flotNum[i] > -9999.0f) && (minValue > flotNum[i]))
{
minValue = flotNum[i];
}
}
return minValue;
}
按Enter就是一次输入的间隔,其实也就是说的换行符。
或者你也可以用逗号等任何方式直接输入成string,然后用split方法将其分割成string[]。最后再类型转换。