Introducción a los arreglos en C

Introducción

Vamos a ver un tutorial de cómo trabajar con arreglos, arrays o vectores en el lenguaje de programación C. Veremos cómo inicializar un arreglo, recorrerlo o modificarlo.

Nota: en este caso array, vector y arreglo son la misma cosa.

Declaración de un vector o array

La sintaxis es:

tipo nombreDeLaVariable[longitudDelArreglo];

Por ejemplo, para declarar un array de 3 enteros usamos esto:

int numeros[3];

Para uno de 5 elementos de tipo double esto:

double calificaciones[5];

Declaración y llenado de un array

En los ejemplos de arriba declaramos los arreglos pero no les pusimos datos iniciales, sólo dijimos cuánto medirán. Para poner datos iniciales la sintaxis es:

tipo nombreDeLaVariable[longitud] = {elemento1, elemento2,…};

Aquí tenemos un array de 3 números enteros, inicializado al inicio:

También puede ser de tipo doble:

Por otro lado, podemos dejar que el compilador infiera la longitud del vector si nosotros lo inicializamos:

En este caso la longitud es de 4, pero no tuvimos que decirla porque el compilador la inferirá. Y no afectará al rendimiento de nuestro programa.

Modificar el valor de un arreglo

Podemos cambiar el valor que tiene un valor dentro de un array. Recordemos que los vectores comienzan en 0. Si tenemos este arreglo:

Y hago lo siguiente:

El contenido será “Luiz” en lugar de “Luis”

Leer un array

Podemos acceder a un array igualmente a través de su índice. Por ejemplo, si tenemos este arreglo:

Y queremos asignar una variable a la posición 2 (la que tiene el número 200) podemos hacer esto

Ahora miNumero tendrá el valor de 200

Recorrer un arreglo

Para recorrer un arreglo usamos un ciclo for que va desde 0 hasta la longitud de nuestro arreglo. Por ejemplo, el siguiente código imprime el valor y el índice de un arreglo:

La salida del programa será la siguiente:

Recorrer array de una dimensión en C
Recorrer array de una dimensión en C

Declaración de array bidimensional o de dos dimensiones

Anteriormente vimos los arreglos como una lista simple, pero también podemos tener arreglos de dos dimensiones.

Veamos este ejemplo que especifica un arreglo que representa un teclado matricial:

Como dice el código: debemos declarar el tamaño de todas las dimensiones, pero podemos dejar la primera vacía. Esto quiere decir que este código es válido:

En este caso no pusimos la longitud de la primera dimensión, pero sí de la segunda. Para aclarar más las cosas, este código es inválido:

Ya que estamos dejando que el compilador adivine la longitud de la segunda dimensión, cosa que no es válida. Si intentamos compilar de todos modos, saldrá este error:

note: declaration of ‘teclado’ as multidimensional array must have bounds for all dimensions except the first

Leer array de dos dimensiones

Con el ejemplo del arreglo de arriba vamos a ver este código para recorrerlo.

En este caso recorremos tanto en X como en Y. Podemos imaginar el arreglo como una tabla. Para acceder a él, usamos lo siguiente:

<em>arreglo[x][y]</em>

Aquí el código:

Creamos 2 ciclos; uno dentro del otro. Para abstraerlo mejor, al primer índice lo tomamos como el índice de la fila. Y al segundo índice lo tomamos como el índice de la celda. Esta es la salida:

Recorrer arreglo de dos dimensiones en C
Recorrer arreglo de dos dimensiones en C

Todo lo que vimos con arreglos de una dimensión aplica para estos arreglos de dos dimensiones. Podemos declararlos sin inicializar sus datos, leerlos o modificarlos.

Arreglos de más dimensiones

Es algo muy raro pero podemos usar arreglos de 3, 4, 5 o infinitas dimensiones. No se me ocurre para qué pero aquí dejo la declaración de un arreglo de 2 x 2 x 3; es decir, uno de 3 dimensiones:

Para recorrerlo hacemos lo mismo de siempre…

Con la siguiente salida:

Recorrer arreglo de tres dimensiones en C
Recorrer arreglo de tres dimensiones en C

Conclusión

La mayoría de ejemplos fueron con arreglos de tipo char pero igualmente podemos trabajar con arreglos de cualquier tipo.

Por cierto, también podemos acceder a un índice dependiendo de una variable. En lugar de esto:

arreglo[2] = 'M';

Podemos tener algo así:

Igualmente para leerlo. En lugar de esto:

printf("El valor es: %c", arreglo[2]);

Podemos tener esto:

Espero que haya quedado claro este pequeño tutorial de arreglos en C.

Si quieres ver más tutoriales de C puedes hacer click aquí.

Cualquier duda déjala en los comentarios.

Encantado de ayudarte


Estoy disponible para trabajar en tu proyecto, modificar el programa del post o realizar tu tarea pendiente, no dudes en ponerte en contacto conmigo.

No te pierdas ninguno de mis posts

Suscríbete a mi canal de Telegram para recibir una notificación cuando escriba un nuevo tutorial de programación.

2 comentarios en “Introducción a los arreglos en C”

  1. Pingback: Elemento aleatorio de arreglo en C - Parzibyte's blog

  2. Pingback: Mayor y menor de 3 números en C - Parzibyte's blog

Dejar un comentario