Массивы в C# отличаются от массивов C-подобных языков.
Продемонстрируем работу с массивами на C#.

Сразу возьмем на заметку, что в C#, как и в C/C++,
нумерация элементов массива идет с нуля.

...
int[] a; //создаем массив a
a=new int [5]; //Определяем массив из 5-х целых
a[0]=1; a[1]=-2; a[2]=5;a[3]=5;a[4]=8 //Присваиваем значения элементам массива

Console.WriteLine(a[2].ToString()); //выводим 3-й элемент массива
...
Обратим внимание на некоторые особенности.

Во-первых, массив определяется именно как int[] а;

а не как :

int а[]; //Неверно
int а[5]; //Неверно
int[5] а; //Неверно

Так как массив это ссылочный объект, то для его создания необходима строка
а=new int [3];

Именно в ней мы и определяем размер массива.

Хотя можно писать и так:

int[] а = new int [5];

Значения этелемнтов массива можно определять сразу при определении массива . К примеру:

int[] а = {-5, 4, 5,2,4};

Конечно же вместо поля int можно написать double,char,и т.п. и получить массив нужного нам типа. Также можно прописывать любую размерность, а не только 5.
Это был пример одномерного массива. Теперь перейдем к многомерным.

Двумерный массив задается вот так :

int[,] а = new int [2,3];

Обратим внимание, что используются только одни квадратные скобки.
В данном случае у нашего массива 2-строки и 3 столбца.
первый элемент а[0,0]

Аналогично задаются многомерные массивы.

К примеру:

int[,,] k = new int [5,5,5];

А так можно сразу инициализировать многомерные массивы:

int[,] а = {{2,-2},{3,-22},{0,4}};

Примеры массивов приведенные выше называются прямоугольными.
Если их представить в виде таблицы (в двумерном случае), то массив будет представлять из себя прямоугольник.

Наряду с прямоугольными массивами существуют так называемые ступенчатые. Вот пример:

//Объявляем 2-мерный ступенчатый массив
int[][] а = new int [2][];
//Объявляем 0-й элемент нашего ступенчатого массива
//Это опять массив и в нем 2 элемента
а[0]=new int[2];
//Объявляем 1-й элемент нашего ступенчатого массива
//Это опять массив и в нем 7 элементов
а[1]=new int[7];
а[1][3]=5; //записываем 5 в последний элемент массива
...
Обратите внимание, что у ступенчатых массивов мы задаем несколько пар квадратных скобок (столько, сколько размерность у массива). Работаем мы с ними точно также как и с прямоугольными.

Самая важная возможность у ступенчатых массивов - это их "непрямоугольность". Так, в приведенном выше примере в первой "строке" массива а два целых числа, а во второй - семь. Бывают случаи когды это удобно применять.

© Hintax