Comment ranger ordre alpha une chaine en c.

Fermé
aziatedu13 Messages postés 19 Date d'inscription mercredi 3 janvier 2007 Statut Membre Dernière intervention 20 février 2008 - 3 janv. 2007 à 14:23
The Edge Messages postés 155 Date d'inscription mercredi 29 décembre 2004 Statut Membre Dernière intervention 21 mai 2008 - 4 janv. 2007 à 11:46
bonjour, je n'arrive pas a trouver comment faire pour ranger une chaine de caractèrer deja existante par ordre alphabétique.pourriez vous m'aidez???

1 réponse

The Edge Messages postés 155 Date d'inscription mercredi 29 décembre 2004 Statut Membre Dernière intervention 21 mai 2008 21
4 janv. 2007 à 11:46
Ha, c'est pas evident sa... Tu cree une chaine de la meme longeur que la chaine a trier. Ensuite tu cree un char. Tu parcours la chaine a trier, tu place dans le char le caractere de la chaine s'il a un code ascii inferieur au char deja stocke. Une fois que toute la chaine a ete parcouru, tu as dans ton char le caractere le plus au debut de l'alphabet. Tu peux donc le copier au debut de la chaine que tu as cree. Puis tu recommence jusqua ce que toute ta "nouvelle chaine" soit remplie.
Une amelioration devra tout de meme etre apportee : lorsque tu parcours la chaine , il faut que tu regarde si le caractere que tu a trouve n'est pas present plusieurs fois. Si c'est le cas, il faut que tu compte combien de fois il apparait, et que tu le copie le meme nombre de fois dans la nouvelle chaine. De plus, si lorsque tu parcours la chaine, tu tombe sur un caractere deja copie dans la nouvelle chaine (et donc trie), il faut que tu t'arrange pour le zapper et passer au suivant.
Bonne chance. En esperant que ce que je t'ai dit t'avance un peu...
0