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 38 39 40 41
|
#include<stdlib.h>
#include<stdio.h>
int lecture(char *tab[],int max)
{
int nbchaine=0;
char chaine[101];
while(nbchaine<max && strcmp(gets(chaine),"end"))
{
tab[nbchaine]=(char*)malloc(strlen(chaine)+1);
strcpy(tab[nbchaine],chaine);
nbchaine++;
}
return nbchaine;
}
int sort(const void *a, const void*b)
{
return strcmp(*(char * const *)a, *(char * const *)b);
}
void ecrire(char *tab[], int max)
{
int i;
qsort((void *)tab, max, sizeof(tab[0]), sort);
for(i=0;i<max;i++)
puts(tab[i]);
}
int main()
{
char *tab[100];
int nblues;
nblues=lecture(tab,100);
printf("\n");
ecrire(tab,nblues);
return 0;
} |