On peut suivre cet algo utilisant deux indices pour parcourir le mot :
rd : position de l'élément testé pour être conservé ou non
wr : position où on va copier un élément conservé
* Au départ rd = wr = 0
* Tant que mot[rd] est différent de '\0' (indicateur de fin de chaine) :
1- Déterminez si la lettre en position rd, mot[rd], doit être conservée.
Elle est conservée si elle est différente des mot[i] pour i<rd ou si rd==0
2- Si elle est conservée, copier mot[rd] dans mot[wr]; incrémenter wr
3- Incrémenter rd
* Ajouter '\0' en mot[wr]
Remarques complémentaires :
- gets() doit être abandonné au profit de fgets()
- fflush(stdin) est non standard : voir les entrées dans notre FAQ C sur ce sujet
Partager