#include #include #include #include void tri(char *tab[], int n) { char *temp; int i, j; for (i = 0; i < n; i++) for (j = 0; j < n; j++) if (strcmp(tab[i], tab[j]) < 0) { temp = tab[i]; tab[i] = tab[j]; tab[j] = temp; } } char *up(char *ct) { char *s = NULL; if (ct != NULL) { int i; s = malloc (sizeof (*s) * (strlen (ct) + 1)); if (s != NULL) for (i = 0; ct[i]; i++) { s[i] = toupper (ct[i]); } s[i] = '\0'; } return s; } int main() { char *uped; char prenom[25]; char *t[5]; int i; for(i=0;i<5;i++) { t[i]=(char *)malloc(5); printf("donner un prenom:"); gets(prenom); uped=up(prenom); t[i]=uped; } tri(t,5); for (i = 0; i < 5; i++) { printf("le %d prenom est %s\n",i, t[i]); } }