【发布时间】:2021-06-24 03:03:54
【问题描述】:
所以我有一个二维数组中的数据表(第一列是行的序数,其余的是我正在使用的数据)。我的问题基本上是如何根据最后一列中的最高值对行进行排序(即,如果第四行在最后一列中获得最高值,它会向上移动到第一行,依此类推)。代码中的random只是我为在x和y之间生成浮点数的一种方法。
到目前为止,我的代码如下所示:
static float random(float min, float max)
{
System.Random random = new System.Random();
double val = (random.NextDouble() * (max - min) + min);
return (float)val;
}
static void Main(string[] args)
{
int temp = 0, i, j;
float[,] matrix;
matrix = new float[10, 5];
//generating ordinal number
for (i = 0; i < 10; i++)
{
matrix[i, 0] = ++temp;
}
//generating rest of the 2D array
for (i = 0; i < 10; i++)
{
for (j = 0; j < 5; j++)
{
matrix[i, 1] = random(60, 100);
matrix[i, 2] = random(50, 100);
matrix[i, 3] = random(40, 100);
matrix[i, 4] = (matrix[i, 1] + matrix[i, 2] + matrix[i, 3]) / 3;
}
}
for (i = 0; i < 10; i++)
{
for (j = 0; j < 5; j++)
{
Console.Write(matrix[i, j] + "\t");
}
Console.WriteLine();
}
Console.WriteLine();
}
【问题讨论】:
标签: c# arrays sorting multidimensional-array