Arreglos multidimensionales
tipo identificador[NUM_FILAS][ NUM_COLUMNAS];
Ejemplo:
double m[3][2]; // la matriz tiene 3 filas y dos columnas.
Para inicializar la matriz m arriba mencionada con un conjunto de coeficientes, ponemos entre
llaves tres conjuntos de llaves, uno parara cada fila y dentro de cada una de ellas dos
coeficientes, uno para cada columna así:
double m[3][2] = {{1.2, 3.4}, {5.6, 8.9}, {4.1, 2.3}};
La tabla anterior se ve mucho más clara si le damos el siguiente acomodo, porque se pueden
apreciar con facilidad las filas y las columnas:
double m[3][2] = { {1.2, 3.4},
{5.6, 8.9},
{4.1, 2.3}};
El compilador crea espacio para guardar tres arreglos contiguos de dos columnas cada uno
Elemento
m[0][0]
m[0][1]
m[1][0]
m[1][1]
m[2][0]
m[2][1]
1.2
3.4
5.6
8.9
4.1
2.3
Valores
Arreglos multidimensionales
// Definición de un arreglo de dos dimensiones:
Int m[4][7];
// Acceso a los elementos del arreglo
M[2][3] = 111;
0
1
2
3
0
1
2
111
3
4
5
6
Arreglos multidimensionales
Paso de un arreglo bidimensional a una función
#include<stdio.h>
#define N
10
void iniciaMatrizIde(float mat[N][N])
{
int fil, col;
for (fil = 0; fil < N; fil++)
{
for (col = 0; col < N; col++)
{
if(fil == col)
mat[fil][col] = 1;
else
mat[fil][col] = 0;
}
}
}
int main ()
{
float iden[N][N];
iniciaMatrizIde(iden);
// imprimeMatriz(iden);
return 0;
}
Resultado
1.00
0.00
0.00
0.00
0.00
0.00
0.00
0.00
0.00
0.00
0.00
1.00
0.00
0.00
0.00
0.00
0.00
0.00
0.00
0.00
0.00
0.00
1.00
0.00
0.00
0.00
0.00
0.00
0.00
0.00
0.00
0.00
0.00
1.00
0.00
0.00
0.00
0.00
0.00
0.00
0.00
0.00
0.00
0.00
1.00
0.00
0.00
0.00
0.00
0.00
0.00
0.00
0.00
0.00
0.00
1.00
0.00
0.00
0.00
0.00
0.00
0.00
0.00
0.00
0.00
0.00
1.00
0.00
0.00
0.00
0.00
0.00
0.00
0.00
0.00
0.00
0.00
1.00
0.00
0.00
0.00
0.00
0.00
0.00
0.00
0.00
0.00
0.00
1.00
0.00
0.00
0.00
0.00
0.00
0.00
0.00
0.00
0.00
0.00
1.00
Descargar

Arreglos multidimensionales