写一个二维数组动态添加数据并进行比较的代码用csharp语言
时间: 2023-03-10 12:39:46 浏览: 81
int[,] array = new int[,] { { 1, 2 }, { 3, 4 } };
int maxValue = 0;
int minValue = 0;//添加数据
int addValue = 5;
int addRow = array.GetUpperBound(0) + 1;
Array.Resize(ref array, addRow + 1);
array[addRow, 0] = addValue;//比较数据
for (int i = 0; i < array.GetUpperBound(0) + 1; i++)
{
if (i == 0)
{
maxValue = array[i, 0];
minValue = array[i, 0];
}
else
{
if (array[i, 0] > maxValue)
maxValue = array[i, 0];
if (array[i, 0] < minValue)
minValue = array[i, 0];
}
}
相关问题
如何定义一维数值和二维数组,并写个实例代码
在大多数编程语言中,可以使用以下方式定义一维数组和二维数组:
1. 定义一维数组:
```csharp
// 使用数据类型后面跟方括号 [] 来定义一维数组
// 声明一个大小为5的整数数组
int[] array1 = new int[5];
```
2. 定义二维数组:
```csharp
// 使用数据类型后面跟方括号 [] 来定义二维数组,并在方括号中指定行和列的大小
// 声明一个大小为3x4的整数二维数组
int[,] array2 = new int[3, 4];
```
以下是一个简单的示例代码,演示了如何定义和使用一维数组和二维数组:
```csharp
using System;
public class ArrayExample
{
public static void Main()
{
// 定义一个大小为5的一维数组
int[] array1 = new int[5];
// 给一维数组赋值
array1[0] = 1;
array1[1] = 2;
array1[2] = 3;
array1[3] = 4;
array1[4] = 5;
// 打印一维数组元素
Console.WriteLine("一维数组元素:");
for (int i = 0; i < array1.Length; i++)
{
Console.WriteLine(array1[i]);
}
// 定义一个大小为3x4的二维数组
int[,] array2 = new int[3, 4];
// 给二维数组赋值
array2[0, 0] = 1;
array2[0, 1] = 2;
array2[0, 2] = 3;
array2[0, 3] = 4;
array2[1, 0] = 5;
array2[1, 1] = 6;
array2[1, 2] = 7;
array2[1, 3] = 8;
array2[2, 0] = 9;
array2[2, 1] = 10;
array2[2, 2] = 11;
array2[2, 3] = 12;
// 打印二维数组元素
Console.WriteLine("二维数组元素:");
for (int i = 0; i < array2.GetLength(0); i++)
{
for (int j = 0; j < array2.GetLength(1); j++)
{
Console.Write(array2[i, j] + " ");
}
Console.WriteLine();
}
}
}
```
在上述示例代码中,我们先定义了一个大小为5的一维数组 `array1`,并给其赋值。然后使用循环打印出数组的元素。
接下来,我们定义了一个大小为3x4的二维数组 `array2`,并给其赋值。通过嵌套的循环打印出二维数组的元素。
希望这个示例代码能帮助你理解如何定义和使用一维数组和二维数组!
用.net 写一个二维数组排列组合的算法
以下是用 C# 语言编写的一个简单的二维数组排列组合算法:
```csharp
using System;
namespace ArrayPermutations
{
class Program
{
static void Main(string[] args)
{
int[,] array = new int[,] { { 1, 2 }, { 3, 4 }, { 5, 6 } };
int[] indices = new int[array.GetLength(0)];
Permute(array, indices, 0);
}
static void Permute(int[,] array, int[] indices, int level)
{
if (level == array.GetLength(0))
{
// Print the permutation
for (int i = 0; i < indices.Length; i++)
{
Console.Write(array[indices[i], 0] + ", " + array[indices[i], 1] + " ");
}
Console.WriteLine();
}
else
{
for (int i = 0; i < array.GetLength(0); i++)
{
if (Array.IndexOf(indices, i) == -1)
{
indices[level] = i;
Permute(array, indices, level + 1);
}
}
}
}
}
}
```
这个算法使用了递归来生成所有可能的排列组合。在 `Permute` 函数中,`array` 参数是要排列组合的二维数组,`indices` 参数是已经选择的行的索引数组,`level` 参数是已经选择了多少行。
首先,在 `Permute` 函数中,如果 `level` 等于数组的行数,就说明已经选择了所有的行,可以打印出这个排列组合。否则,就遍历所有的行,如果这一行还没有被选择,就把它加入到 `indices` 数组中,并递归调用 `Permute` 函数,继续选择下一行。当所有的可能性都被尝试过后,这个函数就结束了。