Tri insertion d'une structure en C

Fermé
jutabary Messages postés 15 Date d'inscription lundi 23 juin 2008 Statut Membre Dernière intervention 1 octobre 2011 - 24 juin 2011 à 13:27
KX Messages postés 16734 Date d'inscription samedi 31 mai 2008 Statut Modérateur Dernière intervention 24 avril 2024 - 24 juin 2011 à 17:45
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

KX Messages postés 16734 Date d'inscription samedi 31 mai 2008 Statut Modérateur Dernière intervention 24 avril 2024 3 015
24 juin 2011 à 13:37
Il faut que tu définisses une fonction de comparaison de deux mots, qui renvoie un nombre négatif, nul ou positif selon si le premier mot est inférieur, égal ou supérieur ou deuxième.
int compare (const void * a, const void * b)

Tu appelles ensuite qsort, qui prends en paramètre un tableau d'éléments, le nombre d'élément qu'il contient, la taille de chacun des éléments : sizeof(stockage), et la fonction de comparaison. Le tableau sera alors trié...
0