#include <stdio.h> main() { /* Déclarations */ int A[50]; /* tableau donné */ int N; /* dimension du tableau */ int X; /* valeur à éliminer */ int *P1, *P2; /* pointeurs d'aide */ /* Saisie des données */ printf("Dimension du tableau (max.50) : "); scanf("%d", &N ); for (P1=A; P1<A+N; P1++) { printf("Elément %d : ", P1-A); scanf("%d", P1); } printf("Introduire l'élément X à éliminer du tableau : "); scanf("%d", &X ); /* Affichage du tableau */ for (P1=A; P1<A+N; P1++) printf("%d ", *P1); printf("\n"); /* Effacer toutes les occurrences de X et comprimer : */ /* Copier tous les éléments de P1 vers P2 et augmenter */ /* P2 pour tous les éléments différents de X. */ for (P1=P2=A; P1<A+N; P1++) { *P2 = *P1; if (*P2 != X) P2++; } /* Nouvelle dimension de A */ N = P2-A; /* Edition du résultat */ for (P1=A; P1<A+N; P1++) printf("%d ", *P1); printf("\n"); return 0; }