Implementación de Operaciones Básicas con Arrays en C

Enviado por Chuletator online y clasificado en Francés

Escrito el en con un tamaño de 2,83 KB

Operaciones fundamentales con arrays en C

1. Añadir elementos

Para insertar un elemento, primero debemos verificar si existe espacio disponible en el array:

if (ne == 20) {
    printf("Está lleno");
} else {
    printf("Da un número: ");
    scanf("%d", &array[ne]);
    ne++;
}

2. Añadir un elemento en una posición específica

Para insertar en una posición determinada, es necesario desplazar los elementos existentes hacia la derecha:

printf("¿En qué posición quieres meter el número?");
scanf("%d", &pos);
for (i = ne - 1; i >= pos - 1; i--) {
    array[i + 1] = array[i]; // Desplazamiento a la derecha
}
printf("Da el número a añadir: ");
scanf("%d", &array[pos - 1]);
ne++;

3. Añadir un elemento detrás de un valor dado

Buscamos el número objetivo y, al encontrarlo, desplazamos los elementos posteriores para insertar el nuevo valor:

printf("¿Detrás de qué número quieres añadir el cero?");
scanf("%d", &num);
for (i = 0; i < ne; i++) {
    if (array[i] == num) {
        for (j = ne - 1; j >= i + 1; j--) {
            array[j + 1] = array[j];
        }
        array[i + 1] = 0;
        ne++;
    }
}

4. Eliminar un elemento por posición

Para eliminar, desplazamos los elementos hacia la izquierda para cerrar el hueco:

printf("¿Qué posición quieres eliminar?");
scanf("%d", &pos);
for (i = pos - 1; i <= ne - 2; i++) {
    array[i] = array[i + 1]; // Desplazamiento a la izquierda
}
ne--;

5. Eliminar un número (primera aparición)

Buscamos la primera coincidencia y, si existe, eliminamos el elemento:

printf("¿Qué número quieres eliminar?");
scanf("%d", &num);
for (i = 0; i < ne && array[i] != num; i++);
if (i < ne) {
    for (j = i; j <= ne - 2; j++) {
        array[j] = array[j + 1];
    }
    ne--;
} else {
    printf("No existe");
}

6. Eliminar todas las apariciones de un número

Recorremos el array de atrás hacia adelante para evitar errores de índice al eliminar múltiples elementos:

printf("¿Qué número deseas eliminar?");
scanf("%d", &num);
for (i = ne - 1; i >= 0; i--) {
    if (array[i] == num) {
        for (j = i; j <= ne - 2; j++) {
            array[j] = array[j + 1];
        }
        ne--;
    }
}

7. Ordenar el array (Método Burbuja)

Utilizamos un algoritmo de ordenamiento para organizar los elementos de forma ascendente:

for (i = 0; i <= ne - 2; i++) {
    for (j = ne - 2; j >= i; j--) {
        if (array[j] > array[j + 1]) {
            aux = array[j];
            array[j] = array[j + 1];
            array[j + 1] = aux;
        }
    }
}

Entradas relacionadas: