Dwuwymiarowa tablica w c

Dwuwymiarowa tablica w c

Tablica dwuwymiarowa jest niczym innym jak rozszerzeniem jednowymiarowej tablicy. Podobnie jak tablica, zawiera taki sam typ elementu danych w inny sposób. Trzyma wszystkie właściwości, jak ma tablica jednorazowa. Teraz widzimy, w jaki sposób deklarowane są tablice dwuwymiarowe w programowaniu C.

Deklarowanie dwuwymiarowej tablicy:

1
Int B [2] [3] Więc liczba zmiennych = (2*3) = 6

Jedna tablica o nazwie ma dwa bloki. Każdy blok ma również trzy bloki, podobnie jak 0, 1 i 2.

Tablica dwuwymiarowa jest niczym innym jak naszą percepcją lub inną fizyczną reprezentacją.

Tablica 2D jest również nazywana tablicą tablicy, ponieważ B [] [] jest tablicą. W tablicy są dwa przecznice. Są również tablicą, ponieważ każdy blok w dwuwymiarowej tablicy. Ma również trzy zmienne traktowane jako tablica.

Jak możemy uzyskać dostęp do tych zmiennych?

Po prostu piszemy, b [0] [0] oznacza, że ​​reprezentuje pierwszy (0) blok pierwszego elementu (0).

1
B [2] [3]

Pierwsza wartość bloku [2] reprezentowana jako 1. rząd i 2. wartość bloku [3] reprezentowana jako każdy wiersz ma trzy kolumny.

1
B [0] [0], B [1] [0]

Tutaj możemy również uzyskać dostęp do tych zmiennych.

Gdzie używamy macierzy dwuwymiarowej?

Załóżmy, że w szkole jest 5 klas. Każda klasa ma 5 uczniów. Musimy określić wartość wszystkich uczniów każdej klasy. W takim przypadku musimy użyć tablicy 2D. S [5] [5]

Po pierwsze, [5] Istnieje 5 bloków, które reprezentują każdą klasę jako każda tablica. Następnie [5] reprezentuje każdą klasę, która ma 5 uczniów.

Przykład 1:

Tutaj widzimy przykład dwuwymiarowych tablic. Za pomocą 2 D tablicy możemy zobaczyć tutaj sumę dwóch macierzy.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
#włączać
int main ()

int a [3] [3], b [3] [3], c [3] [3], i, j; // Deklarowanie dwuwymiarowej tablicy.
printf („Wprowadź 9 liczb dla pierwszej macierzy \ n”);
dla (i = 0; i <= 2 ; i++ )

dla (j = 0; j <= 2 ; j++ )

Scanf („%d” i a [i] [j]); // inicjalizacja wartości do 1. macierzy.


printf („Wprowadź 9 liczb dla drugiej macierzy \ n”);
dla (i = 0; i <= 2 ; i++ )

dla (j = 0; j <= 2 ; j++ )

Scanf („%d” i b [i] [j]); // inicjalizacja wartości do drugiej macierzy.


dla (i = 0; i <= 2 ; i++ )

dla (j = 0; j <= 2 ; j++ )

c [i] [j] = a [i] [j] + b [i] [j]; // suma dwóch macierzy.
printf („ %d \ t”, c [i] [j]);

printf („\ n”);

powrót 0;

Wyjście:

Wyjaśnienie:

Tutaj deklarujemy dwuwymiarowe tablice (macierze), aby wziąć pewne dane wejściowe od użytkownika. Te matryce są [] [] i b [] []. Korzystając z pętli, wprowadzamy niektóre wartości z użytkowników do tych macierzy. Teraz podsumowujemy te elementy zgodnie z regułami matematycznymi macierzy i drukujemy wynik do monitora.

Przykład-2:

Tutaj widzimy kolejny przykład dwuwymiarowych tablic. W matematyce Matrix działa jako tablica dwuwymiarowa. Tutaj chcemy przetrwać matrycę.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
#włączać
int main ()

int m, n, i, j, c [100] [100], a [100] [100]; // Deklarowanie dwuwymiarowej tablicy.
printf („Wprowadź liczbę wierszy i kolumn macierzy:”);
Scanf („%d%d”, & m, & n);
dla (i = 0; i < m ; i++ )

dla (j = 0; j < n ; j++ )

printf („Wprowadź element _ [%d] [%d]:", i, j);
Scanf („%d”, i c [i] [j]); // Wprowadzanie wartości w 2 D tablicy.


printf („\ n Oryginalna macierz to: \ n”);
dla (i = 0; i < m ; i++ )

dla (j = 0; j < n ; j++ )

printf („ %d \ t”, c [i] [j]);

printf („\ n”);

dla (i = 0; i < m ; i++ )

dla (j = 0; j < n ; j++ )

a [j] [i] = c [i] [j];


printf („\ n Transpose z danej macierzy podano poniżej: \ n”);
dla (i = 0; i < n ; i++ )

dla (j = 0; j < m ; j++ )

printf („ %d \ t”, a [i] [j]); // Transponowanie macierzy.

printf („\ n”);

powrót 0;

Wyjście:

Wyjaśnienie:

Tutaj chcemy przetrwać daną matrycę. Najpierw deklarujemy dwuwymiarową tablicę. Jak powiedzieliśmy wcześniej, każda matryca w matematyce działa jako dwuwymiarowa tablica. Tak więc tablica deklarowania jest teraz transponowana przy użyciu pętli.

Przykład-3:

Tutaj widzimy przykład dwuwymiarowych tablic. Za pomocą 2 D tablicy możemy zobaczyć tutaj mnożenie dwóch macierzy.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
#włączać
int main ()

int A [10] [10], B [10] [10], MUL [10] [10], R, C, I, J, K; // deklarowanie tablicy.
printf („Wprowadź liczbę row =”);
Scanf („%d”, & r);
printf („Wprowadź liczbę kolumn =”);
Scanf („%D” i c);
printf („Wprowadź pierwszy element matrycy = \ n”);
dla (i = 0; i < r ; i++ )

dla (j = 0; j < c ; j++ )

Scanf („%d” i a [i] [j]);


printf („Wprowadź drugi element macierzy = \ n”);
dla (i = 0; i < r ; i++ )

dla (j = 0; j < c ; j++ )

Scanf („%d” i b [i] [j]);


printf („mnoż macierzy = \ n”);
dla (i = 0; i < r ; i++ )

dla (j = 0; j < c ; j++ )

MUL [i] [j] = 0;
dla (k = 0; k < c ; k++ )

MUL [i] [j]+= a [i] [k] * b [k] [j]; // Pomnożenie wartości.



// dla wyniku drukowania
dla (i = 0; i < r ; i++ )

dla (j = 0; j < c ; j++ )

printf („ %d \ t”, mul [i] [j]);

printf („\ n”);

powrót 0;

Wyjście:

Wyjaśnienie:

Tutaj deklarujemy dwuwymiarowe tablice (macierze), aby wziąć pewne dane wejściowe od użytkownika. Te matryce są [] [] i b [] []. Korzystając z pętli, wprowadzamy niektóre wartości z użytkowników do tych macierzy. Teraz mnożymy te elementy zgodnie z matematycznymi regułami macierzy i drukujemy wynik do monitora.

Wniosek:

Dwuwymiarowa tablica jest formą matrycy w matematyce. Za pomocą dwuwymiarowych tablic możemy łatwo rozwiązać różne typy problemu związanego z matrycą matematyczną. Rzadka macierz jest przykładem dwuwymiarowych tablic.