Bonsoir les amis ..
je veux trier 10 mots lexicographiquement mais ça ne marche pas même si j'ai pas d'erreur ..
voila mon code
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
 
#include<stdio.h>
#include<string.h>
#include<stdlib.h>
 
main()
{
	int i ,j, imax ; 
	char str[10][20] , aide[20] ; //aide est une variable pour permuter
	for(i=0;i<10;i++)
	{
		printf("Saisir le mot numero %d : ",i+1);
		scanf("%s",str[i]);
	}
	/* on utilise le tri par max */
	for(i=0;i<9;i++)
	{
		imax=i ; //initialiser le imax par i a chaque itteration
		for(j=i+1;j<10;j++)
		{
			if(strcmp(str[imax],str[j])<0) // ordonner alphabetiquement
			{
				imax=j ;
			}
		}
		/* echange */
		strcpy(aide[20],str[i]);  //la fonction strcpy pour copier 
		strcpy(str[i],str[imax]);
		strcpy(str[imax],aide[20]);
	}
	for(i=0;i<10;i++) // affichage ! 
	{
		printf("%s",str[i]);
		printf("\n");
	}
	return 0 ;
}
vos remarques ?