Insertion d'éléments dans les tableaux C

CBeginner
Pratiquer maintenant

Introduction

En C, un tableau est une collection de types de données similaires stockés dans des emplacements mémoire contigus. Cela aide à stocker plusieurs valeurs sous un seul nom de variable, économisant de l'espace mémoire et simplifiant la structure du code. Dans ce laboratoire, nous allons apprendre à insérer un élément dans un tableau à une position spécifique.

Note: Vous devez créer le fichier ~/project/main.c vous-même pour pratiquer la programmation et apprendre à le compiler et à l'exécuter à l'aide de gcc.

cd ~/project
## créer main.c
touch main.c
## compiler main.c
gcc main.c -o main
## exécuter main
./main

Création d'un tableau

Dans cette étape, nous allons créer un tableau avec quelques éléments initiaux et afficher ses valeurs.

#include <stdio.h>

int main() {
    // Définir les variables et le tableau
    int array[5] = {10, 20, 30, 40, 50};
    int n = 5, i;

    printf("Tableau initial : ");
    for(i=0; i<n; i++) {
        printf("%d ", array[i]);
    }

    return 0;
}

Demande d'entrée utilisateur

Dans cette étape, nous allons demander à l'utilisateur d'entrer la nouvelle valeur à insérer et l'index où la valeur sera insérée.

#include <stdio.h>

int main() {
    // Définir les variables et le tableau
    int array[5] = {10, 20, 30, 40, 50};
    int n = 5, i, value, position;

    printf("Tableau initial : ");
    for(i=0; i<n; i++) {
        printf("%d ", array[i]);
    }

    // Demander l'entrée pour la nouvelle valeur et la position
    printf("\n\nEntrez la valeur à insérer : ");
    scanf("%d", &value);

    printf("Entrez la position à insérer : ");
    scanf("%d", &position);

    return 0;
}

Insertion de l'élément

Dans cette étape, nous allons insérer le nouvel élément dans le tableau à la position donnée. Nous allons déplacer les éléments existants vers la droite de la position et ajouter le nouvel élément à l'index de la position.

#include <stdio.h>

int main() {
    // Définir les variables et le tableau
    int array[5] = {10, 20, 30, 40, 50};
    int n = 5, i, value, position;

    printf("Tableau initial : ");
    for(i=0; i<n; i++) {
        printf("%d ", array[i]);
    }

    // Demander l'entrée pour la nouvelle valeur et la position
    printf("\n\nEntrez la valeur à insérer : ");
    scanf("%d", &value);

    printf("Entrez la position à insérer : ");
    scanf("%d", &position);

    // Déplacer les éléments existants vers la droite de la position
    for(i=n-1; i>=position-1; i--) {
        array[i+1] = array[i];
    }

    // Insérer le nouvel élément à l'index de la position
    array[position-1] = value;

    return 0;
}

Affichage du résultat

Dans cette étape, nous allons afficher le nouveau tableau avec l'élément inséré.

#include <stdio.h>

int main() {
    // Définir les variables et le tableau
    int array[5] = {10, 20, 30, 40, 50};
    int n = 5, i, value, position;

    printf("Tableau initial : ");
    for(i=0; i<n; i++) {
        printf("%d ", array[i]);
    }

    // Demander l'entrée pour la nouvelle valeur et la position
    printf("\n\nEntrez la valeur à insérer : ");
    scanf("%d", &value);

    printf("Entrez la position à insérer : ");
    scanf("%d", &position);

    // Déplacer les éléments existants vers la droite de la position
    for(i=n-1; i>=position-1; i--) {
        array[i+1] = array[i];
    }

    // Insérer le nouvel élément à l'index de la position
    array[position-1] = value;

    // Afficher le nouveau tableau
    printf("\n\nNouveau tableau avec l'élément inséré : ");
    for(i=0; i<n+1; i++) {
        printf("%d ", array[i]);
    }

    return 0;
}

Code final

Voici le code final pour insérer un élément dans un tableau :

#include <stdio.h>

int main() {
    // Définir les variables et le tableau
    int array[5] = {10, 20, 30, 40, 50};
    int n = 5, i, value, position;

    printf("Tableau initial : ");
    for(i=0; i<n; i++) {
        printf("%d ", array[i]);
    }

    // Demander l'entrée pour la nouvelle valeur et la position
    printf("\n\nEntrez la valeur à insérer : ");
    scanf("%d", &value);

    printf("Entrez la position à insérer : ");
    scanf("%d", &position);

    // Déplacer les éléments existants vers la droite de la position
    for(i=n-1; i>=position-1; i--) {
        array[i+1] = array[i];
    }

    // Insérer le nouvel élément à l'index de la position
    array[position-1] = value;

    // Afficher le nouveau tableau
    printf("\n\nNouveau tableau avec l'élément inséré : ");
    for(i=0; i<n+1; i++) {
        printf("%d ", array[i]);
    }

    return 0;
}

Résumé

Dans ce laboratoire, nous avons appris à insérer un élément dans un tableau à une position spécifique en utilisant le langage C. Nous avons créé un tableau initial, demandé à l'utilisateur d'entrer le nouvel élément et la position, inséré l'élément dans le tableau à la position spécifiée en déplaçant les éléments existants vers la droite, et affiché le nouveau tableau résultant.