Array bidimensional em C

Array bidimensional em C

Array bidimensional nada mais é do que a extensão da matriz unidimensional. Como a matriz, ele mantém um mesmo tipo de elemento de dados de uma maneira diferente. Ele mantém todas as propriedades como a matriz de unidade única. Agora, vemos como as matrizes bidimensionais são declaradas em uma programação C.

Declarando uma matriz bidimensional:

1
int b [2] [3] Portanto, o número de variáveis ​​= (2*3) = 6

Uma matriz chamada tem dois blocos. Cada bloco também possui três blocos como 0, 1 e 2.

Array bidimensional nada mais é do que nossa percepção ou outra representação física.

A matriz 2D também é chamada de matriz porque B [] [] é uma matriz. Existem dois blocos dentro da matriz. Eles também são matrizes porque cada bloco na matriz bidimensional. Possui também três variáveis ​​tratadas como matriz.

Como podemos acessar essas variáveis?

Acabamos de escrever, B [0] [0] significa que ele representa o primeiro (0) bloco do primeiro elemento (0).

1
B [2] [3]

Primeiro valor do bloco [2] representado como 1ª linha e 2º valor do bloco [3] representado como cada linha possui três colunas.

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

Aqui também podemos acessar essas variáveis ​​da mesma maneira.

Onde usamos uma matriz bidimensional?

Suponha em uma escola, existem 5 aulas. Cada turma tem 5 alunos. Devemos determinar o valor de todos os alunos de cada aula. Nesse caso, devemos usar a matriz 2D. S [5] [5]

Primeiro, [5] existem 5 blocos que representam cada classe como cada matriz. Em seguida, [5] representa cada classe que tem 5 alunos.

Exemplo 1:

Aqui, vemos um exemplo de matrizes bidimensionais. Com a ajuda de 2 D Array, podemos ver aqui a soma de duas matrizes.

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
#incluir
int main ()

int a [3] [3], b [3] [3], c [3] [3], i, j; // declarando matriz bidimensional.
printf ("Digite 9 números para a primeira matriz \ n");
para (i = 0; i <= 2 ; i++ )

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

scanf ("%d", & a [i] [j]); // inicializando valores para a 1ª matriz.


printf ("Digite 9 números para a segunda matriz \ n");
para (i = 0; i <= 2 ; i++ )

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

scanf ("%d", & b [i] [j]); // inicializando valores para a 2ª matriz.


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

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

c [i] [j] = a [i] [j] + b [i] [j]; // soma de duas matrizes.
printf (" %d \ t", c [i] [j]);

printf ("\ n");

retornar 0;

Saída:

Explicação:

Aqui, declaramos matrizes bidimensionais (matrizes) para receber algumas entradas do usuário. Essas matrizes são um [] [] e b [] []. Usando loops, inserimos alguns valores dos usuários para essas matrizes. Agora, resumimos esses elementos de acordo com as regras matemáticas de matrizes e imprimimos o resultado para o monitor.

Exemplo 2:

Aqui, vemos outro exemplo de matrizes bidimensionais. Em matemática, a Matrix atua como uma matriz bidimensional. Aqui, queremos transpor uma matriz.

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
#incluir
int main ()

int m, n, i, j, c [100] [100], a [100] [100]; // declarando matriz bidimensional.
printf ("Digite o número de linhas e colunas da matriz:");
scanf ("%d%d", & m, & n);
para (i = 0; i < m ; i++ )

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

printf ("Digite o elemento _ [%d] [%d]:", i, j);
scanf ("%d", & c [i] [j]); // inserindo valores na matriz 2 D.


printf ("\ n a matriz original é: \ n");
para (i = 0; i < m ; i++ )

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

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

printf ("\ n");

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

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

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


printf ("\ n transponha da matriz dada é dada abaixo: \ n");
para (i = 0; i < n ; i++ )

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

printf (" %d \ t", a [i] [j]); // transpondo a matriz.

printf ("\ n");

retornar 0;

Saída:

Explicação:

Aqui, queremos transpor uma determinada matriz. Primeiro, declaramos uma matriz bidimensional. Como dissemos anteriormente, cada matriz em matemática atua como uma matriz bidimensional. Então, a matriz de declaração agora é transposta usando loops.

Exemplo 3:

Aqui, vemos um exemplo de matrizes bidimensionais. Com a ajuda de 2 D Array, podemos ver aqui a multiplicação de duas matrizes.

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
#incluir
int main ()

int a [10] [10], b [10] [10], mul [10] [10], r, c, i, j, k; // declarando matriz.
printf ("Digite o número de linha =");
scanf ("%d", & r);
printf ("Digite o número de column =");
scanf ("%d", & c);
printf ("Digite o primeiro elemento da matriz = \ n");
para (i = 0; i < r ; i++ )

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

scanf ("%d", & a [i] [j]);


printf ("Digite o segundo elemento da matriz = \ n");
para (i = 0; i < r ; i++ )

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

scanf ("%d", & b [i] [j]);


printf ("multiplique da matriz = \ n");
para (i = 0; i < r ; i++ )

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

mul [i] [j] = 0;
para (k = 0; k < c ; k++ )

mul [i] [j]+= a [i] [k] * b [k] [j]; // multiplicando os valores.



// para resultado de impressão
para (i = 0; i < r ; i++ )

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

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

printf ("\ n");

retornar 0;

Saída:

Explicação:

Aqui, declaramos matrizes bidimensionais (matrizes) para receber algumas entradas do usuário. Essas matrizes são um [] [] e b [] []. Usando loops, inserimos alguns valores dos usuários para essas matrizes. Agora, multiplicamos esses elementos de acordo com as regras matemáticas de matrizes e imprimimos o resultado para o monitor.

Conclusão:

Array bidimensional é uma forma de matriz em matemática. Com a ajuda de matrizes bidimensionais, podemos resolver facilmente diferentes tipos de problema relacionado à matriz matemática. Matriz esparsa é um exemplo de matrizes bidimensionais.