Oyé oyé!
Me voici confronté à un problème que je n'arrive pas à résoudre.
Je dois tout simplement trier un tableau rempli de chaines de caractères, que je remplis moi-même.
Après je dois la trier par ordre alphabétique, mais il plante toujours lors de ce tri.
Voici mon code :
#include<stdio.h>
#define NBRMOTS 3
#define LGMOT 20
void tri_chaine_caract(char tableau[],int tabLength, int wordLength);
main()
{
char tab[NBRMOTS][LGMOT];
int i;
char choix;
printf("encodez une série de 3 mots! \n");
for(i=0;i<NBRMOTS;i++)
{
printf("Mot %d : ", i);
scanf("%s", tab[i]);
}
do
{
printf("appuyez sur 'r' pour effectuer le tri \n");
printf("appuyez sur 'q' pour quitter \n\n");
choix=getch();
if(choix=='q')
abort();
else if(choix=='r')
{
tri_chaine_caract(tab,NBRMOTS,LGMOT);
}
}
while(choix!='q' && choix!='r');
}
void tri_chaine_caract(char tableau[],int tabLength, int wordLength)
{
int i,k;
char temp[wordLength];
for(i=0;i<tabLength;i++)
{
k=i;
while((k>=0) || (strcmp(tableau[k],tableau[k-1]<0)))
{
temp=tableau[k];
tableau[k]=tableau[k-1];
tableau[k-1]=temp;
k=k-1;
}
}
}
Alors, si je laisse le code comme ca, il me dit "16a.c:48: error: incompatible types in assignment". ceci est pour la ligne "temp=tableau[k];"
Maintenant si je la mets en commentaire, il compile bien, mais au moment de faire le tri, il plante...
Et je ne comprends pas pq :(
qqn saurait m'aider en cette période d'examens? ^^
Merci à vous


Merci de ne pas avoir répondu mais finalement ca va j'ai trouvé la solution
Bonne soirée au revoir
Ouah du sarcasme :evil:
Tu veux pas la réponse en tant réel non plus ?
J'ai une meilleure idée. S'il a trouvé la solution qu'il écrive un tutoriel sur notre site. Ou bien si tu veux, tu le fais k-lo :)
Il y a cent euro à gagner chaque mois, pour l'auteur du meilleur tutoriel :)