Exercice: Ecrire un programme qui lit un entier X et un tableau A du type int au clavier et élimine toutes les occurrences de X dans A en tassant les éléments restants. Le programme utilisera les pointeurs P1 et P2 pour parcourir le tableau

voilà ce que j'ai fait mais je ne sais pas pourquoi ça marche pas
merci pour votre aide

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
#include <stdio.h>
#include <conio.h>
int main()
{
    int t[50];
    int n;
    int *p1;
    int *p2;
    int q;
    int nb;
    printf("entrer la dimension du tableau");
    scanf("%d",&n);
    for(p1=t;p1<t+n;p1++){
                       printf("entrer l'element [%d]:    ",p1-t);
                       scanf("%d",p1);
                       }
                       printf("entrer l'élement à afficher");
                       scanf("%d",&q);
                       for(p1=t;p1<t+n;p1++){
                                             while(*p1=!q)
                                             *p2=*p1;
                                             nb++;
                                             }
                                             n=nb;
    for(p2=t;p2<t+n;p2++){
                          printf("%4d",*p2);
                          }
                          printf("\n");
                          getch();
}