Помогите с C#

agent 58

Новичок
Автор темы
2
0
Я начал изучать C# по гайдам на ютубе и там была тема массивы данных и если с обычными все +- понятно то с многоуровневыми появились вопросы
обычный массив:
int[] x = new int[10];
x[0] = 1;
x[1] = 2;
x[2] = 3;
x[3] = 4;
x[4] = 5;
x[5] = 6;
x[6] = 7;
x[7] = 8;
x[8] = 9;
x[9] = 10;
for( int i =0; i < x.Length; i++ )
{
    Console.WriteLine(x[i] );
}
вот код для вывода обычного массива и он работает

многоуровневый массив:
int[,] y =
{
    {55,9,7 },
    {654,8,0 },
    {54,9,1 },
};
for (int z = 0; z < y.Length; z++)
{
    for (int o = 0; o< y[z].Length; o++) // тут появляется ошибка и требует какой то 2 индекс
    {
        {
        Console.WriteLine(y[z,o]);
    }
}
а вот с многоуровневым беда ибо появляется ошибка и пишет что нужен 2 индекс а че за индекс я без понятия
объясните пожалуйста как выводить многоуровневые массивы через цикл for
 

archvillain

Активный
129
76
Я начал изучать C# по гайдам на ютубе и там была тема массивы данных и если с обычными все +- понятно то с многоуровневыми появились вопросы
обычный массив:
int[] x = new int[10];
x[0] = 1;
x[1] = 2;
x[2] = 3;
x[3] = 4;
x[4] = 5;
x[5] = 6;
x[6] = 7;
x[7] = 8;
x[8] = 9;
x[9] = 10;
for( int i =0; i < x.Length; i++ )
{
    Console.WriteLine(x[i] );
}
вот код для вывода обычного массива и он работает

многоуровневый массив:
int[,] y =
{
    {55,9,7 },
    {654,8,0 },
    {54,9,1 },
};
for (int z = 0; z < y.Length; z++)
{
    for (int o = 0; o< y[z].Length; o++) // тут появляется ошибка и требует какой то 2 индекс
    {
        {
        Console.WriteLine(y[z,o]);
    }
}
а вот с многоуровневым беда ибо появляется ошибка и пишет что нужен 2 индекс а че за индекс я без понятия
объясните пожалуйста как выводить многоуровневые массивы через цикл for
С многоуровневым массивом нужно использовать GetLength() и указывать измерение:
example:
int[,] y =
{
    {55,9,7},
    {654,8,0},
    {54,9,1}
};

for (int z = 0; z < y.GetLength(0); z++)
{
    for (int o = 0; o < y.GetLength(1); o++)
    {
        Console.Write(y[z,o] + " ");
    }
    Console.WriteLine();
}
 
Последнее редактирование: