Tri insertion d'une structure en C

Bonjour,

j'aimerais avoir de l'aide au niveau du tri de ma structure
J'ai un tableau de mot et chaque mot est un tableau de lettre

voici ma structure :

typedef struct
{
char mot[26];
}stockage;

et voici mon trix

void triinsertion (char t[],int MAX){

int i,j,min,aux;
for(i=0;i<MAX;i++)
{
aux=t[i];
j=i;
while(j>0 && t[j-1]>aux)
{
t[j]=t[j-1];
j=j-1;
}
t[j]=aux;
}
}

j'aimerais trix les mots de mon texte par ordre alphabétique

pourriez-vous m'aider
je vous remercie d'avance

4 réponses

  1. Nous n'avons pas réellement vu le pointeur en cours, nous l'avons utilisé quelque fois mais sans toute fois savoir l'utiliser.

    Le but de ce programme est de comparer 2 textes pour y trouver les anagrammes.
    Pour le faire nous devions faire une structure, mettre les 2 textes dans des tableaux ... Puis trier les lettres des mots de manière alphabétique (j'y suis arrivé) et enfin trier les mots de manière alpahabétique (ou j'en suis ) pour ensuite comparer les deux textes pour y trouver les anagrammes .

    je cherche si possible une méthode sans utiliser de pointeurs
    je dois rendre le projet avant 18h ce soir, je n'y arriverais pas mais j'essaye au moins d'aller le plus loin possible
    1. Modérateur
      Trier les mots, tu veux dire que "bonjour" donne "bjnooru" ?
      Ton code le fait déjà ça :

      char t[8] = "bonjour";   
      triinsertion(t,7);   
      printf("%s\n",t); // bjnooru
    2. oui c'est ce que j'appelle le premier tri.
      J'aimerais après faire "Bonjour amélie" par "aeeilm bjnooru"
    3. Modérateur
      Tu peux faire comme j'ai marqué un peu plus haut avec qsort... mais avec tab qui contiendrait "aeelim" et "bjnooru", et qui serait plutôt un tab[2][26] dans ton cas