Menu
Coddy logo textTech

Podstawy tablic 2D

Część sekcji Logika i sterowanie przepływem ścieżki C# w Coddy. Lekcja 1 z 66.

W języku C# tablica postrzępiona to tablica tablic, tworząca siatkę lub strukturę przypominającą macierz. Przypomina tabelę z wierszami i kolumnami, w której każda komórka może przechowywać wartość. Tablice postrzępione są przydatne do reprezentowania danych, które mają dwuwymiarową relację, takich jak szachownica, plan miejsc lub gra oparta na siatce.

Oto, jak deklaruje się i inicjalizuje tablicę postrzępioną w C#:

data_type[][] arrayName = new dataType[numberOfRows][];

dataType: Typ elementów, które będzie zawierać tablica (np. int, string itp.).

arrayName: Nazwa nadana tablicy.

numberOfRows: Liczba wierszy w tablicy.

Każdy wiersz należy następnie zainicjować osobno:

arrayName[0] = new dataType[lengthOfFirstRow];
arrayName[1] = new dataType[lengthOfSecondRow];
// i tak dalej...

Na przykład, aby utworzyć postrzępioną tablicę liczb całkowitych z 3 wierszami, z których każdy ma 4 kolumny, napisz:

int[][] matrix = new int[3][];
matrix[0] = new int[4];
matrix[1] = new int[4];
matrix[2] = new int[4];

Możesz również zainicjalizować tablicę postrzępioną bezpośrednio wartościami:

int[][] matrix = new int[][] {
    new int[] {1, 2, 3},
    new int[] {4, 5, 6},
    new int[] {7, 8, 9}
};

Uwaga: Ta platforma korzysta z kompilatora sprzed C# 12. Krótsza składnia wyrażeń kolekcji wprowadzona w C# 12 (np. int[][] matrix = [[1, 2], [3, 4]];) nie jest tutaj obsługiwana. Użyj tradycyjnej składni inicjalizacji new int[][] { ... } pokazanej powyżej.

challenge icon

Wyzwanie

Łatwy

Zainicjalizuj tablicę postrzępioną następującymi wartościami:

5, 7, 10, 24, 41
86, 13, 683, 64, 13
42, 46, 791, 111, 9
86, 88, 1845, 5, 15897
9, 1, 5, 5, 6

Twoim zadaniem jest poprawne zainicjalizowanie tablicy postrzępionej tymi dokładnymi wartościami i upewnienie się, że program poprawnie wypisuje macierz.

Uwaga: Ta platforma korzysta z kompilatora sprzed C# 12. Składnia wyrażeń kolekcji z C# 12 (np. int[][] matrix = [[1, 2], [3, 4]];) nie jest obsługiwana. Zamiast tego użyj tradycyjnej składni inicjalizacji:
int[][] matrix = new int[][] { new int[] {1, 2}, new int[] {3, 4} };

Spróbuj swoich sił

using System;

class Program
{
    static void Main(string[] args)
    {
        int[][] matrix = {
            // Wpisz tutaj swój kod
        };
        
        // Wyświetl macierz
        int rows = matrix.Length;
        
        for (int i = 0; i < rows; i++)
        {
            int cols = matrix[i].Length;
            for (int j = 0; j < cols; j++)
            {
                Console.Write(matrix[i][j] + " ");
            }
            Console.WriteLine();
        }
    }
}
quiz iconSprawdź się

Ta lekcja zawiera krótki quiz. Zacznij lekcję, żeby na niego odpowiedzieć i śledzić swoje postępy.

Wszystkie lekcje w sekcji Logika i sterowanie przepływem

Poćwicz samodzielnie: Kompilator C# online