Arreglos (Arrays)

Declaración e inicialización de arreglos unidimensionales y multidimensionales

En C, los arreglos son colecciones de elementos del mismo tipo que se almacenan en memoria de forma contigua. Los arreglos pueden ser unidimensionales o multidimensionales.

  • Unidimensionales: Arreglos con una sola dimensión.
  • Multidimensionales: Arreglos con más de una dimensión, como matrices.
				
					#include <stdio.h>

int main() {
    // Declaración e inicialización de un arreglo unidimensional
    int unidimensional[5] = {10, 20, 30, 40, 50};

    // Declaración e inicialización de un arreglo bidimensional
    int bidimensional[2][3] = {
        {1, 2, 3},
        {4, 5, 6}
    };

    // Acceso e impresión de elementos de arreglos
    printf("Arreglo unidimensional:\n");
    for (int i = 0; i < 5; i++) {
        printf("%d ", unidimensional[i]);
    }

    printf("\nArreglo bidimensional:\n");
    for (int i = 0; i < 2; i++) {
        for (int j = 0; j < 3; j++) {
            printf("%d ", bidimensional[i][j]);
        }
        printf("\n");
    }

    return 0;
}

				
			

Explicación:

  • Arreglos Unidimensionales:
    • Se declaran utilizando corchetes []. Por ejemplo, int unidimensional[5] declara un arreglo de enteros de tamaño 5.
    • Se inicializan con una lista de valores entre llaves {}.
  • Arreglos Multidimensionales:
    • Se declaran con múltiples conjuntos de corchetes [][]. Por ejemplo, int bidimensional[2][3] declara una matriz de 2×3.
    • Se inicializan con listas de valores entre llaves {}. Cada conjunto de llaves representa una fila de la matriz.

Acceso y manipulación de elementos de un arreglo

En C, los arreglos son colecciones de elementos del mismo tipo almacenados en memoria de forma contigua. Para acceder y manipular los elementos de un arreglo, utilizamos índices.

				
					#include <stdio.h>

int main() {
    // Declaración e inicialización de un arreglo unidimensional
    int unidimensional[5] = {10, 20, 30, 40, 50};

    // Acceso y manipulación de elementos del arreglo unidimensional
    printf("Elementos del arreglo unidimensional:\n");
    for (int i = 0; i < 5; i++) {
        printf("%d ", unidimensional[i]); // Acceso
    }
    printf("\n");

    // Manipulación de un elemento específico
    unidimensional[2] = 35; // Cambio del tercer elemento a 35

    // Acceso después de la manipulación
    printf("Elementos del arreglo unidimensional después de la manipulación:\n");
    for (int i = 0; i < 5; i++) {
        printf("%d ", unidimensional[i]);
    }
    printf("\n");

    return 0;
}

				
			

Explicación:

En C, los arreglos son estructuras de datos que nos permiten almacenar múltiples valores del mismo tipo en una única variable. Para acceder y manipular estos valores, utilizamos índices.

  • Acceso a Elementos:
    • Utilizamos corchetes [] seguidos del índice para acceder a un elemento específico del arreglo. Por ejemplo, unidimensional[2] accede al tercer elemento del arreglo.
  • Manipulación de Elementos:
    • Después de acceder a un elemento, podemos manipularlo asignándole un nuevo valor. Por ejemplo, unidimensional[2] = 35 cambia el tercer elemento a 35.

Pasar arreglos a funciones

En C, puedes pasar arreglos como argumentos a funciones. Cuando pasas un arreglo a una función, en realidad estás pasando la dirección base del arreglo, lo que permite que la función acceda y manipule los elementos del arreglo.

				
					#include <stdio.h>

// Función para imprimir elementos de un arreglo
void imprimirArreglo(int arr[], int tam) {
    printf("Elementos del arreglo:\n");
    for (int i = 0; i < tam; i++) {
        printf("%d ", arr[i]);
    }
    printf("\n");
}

int main() {
    int arreglo[] = {10, 20, 30, 40, 50};
    int tamano = 5;

    // Llamada a la función pasando el arreglo como argumento
    imprimirArreglo(arreglo, tamano);

    return 0;
}

				
			

Explicación:

  • En la función imprimirArreglo, el parámetro arr es un arreglo de enteros y tam es el tamaño del arreglo.

  • Cuando pasamos un arreglo a esta función, pasamos la dirección base del arreglo. Por lo tanto, cualquier cambio realizado en la función afectará al arreglo original.

  • Esto se debe a que los arreglos se pasan por referencia en C, lo que significa que la función puede acceder y manipular los elementos del arreglo original.