DWORD supprDoublonsInts(int *ptab, DWORD n) { DWORD pRD, pWRT, i; int v; if(n < 2) return n; pRD = 1; pWRT = 1; doTAB: v = ptab[pRD]; for(i = 0; i < pWRT; i++) { // Y EST DEJA ??? if(v == ptab[i]) goto nextREAD; } ptab[pWRT] = v; // NON TROUVE, ON INSERE pWRT++; nextREAD: pRD++; if(pRD < n) goto doTAB; return pWRT; // ON RETOURNE COMBIEN IL EN RESTE } void tstDoublons() { char buf[160], *d; int T[12], *p; DWORD n; for(n = 0; n < 12; n++) { // INIT TABLEAU T[n] = (int) n; } T[4] = 10; T[9] = 0; T[10] = 6; // QUELQUES DOUBLONS n = supprDoublonsInts(T, n); // AFFICHAGE WindowsoBruNewsien *bnultoa(n, buf) = 0; // COUNT EN TITRE AFFICHAGE d = buf + 12; if(n) { p = T; do { d = bnultoa(*p, d); *d = 10; p++; d++; } while(--n); } *d = 0; MessageBox(0, buf + 12, buf, 0); }
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question