#include <stdio.h> #include <stdlib.h> #include <string.h> #define WORDS_MAX_SIZE 50 #define WORDS_MAX_COUNT 100 int compare(const void *a, const void *b) { return strcmp((char*)a, (char*)b); } int main(int argc, char *argv[]) { char (*lpWords)[WORDS_MAX_SIZE]; int nWordsCount; int nI; lpWords = (char(*)[WORDS_MAX_SIZE])malloc(sizeof(char) * WORDS_MAX_SIZE * WORDS_MAX_COUNT); puts("Entrez les mots. Tappez end pour quitter."); nWordsCount = -1; do { nWordsCount++; gets(lpWords[nWordsCount]); } while (strcmp("end", lpWords[nWordsCount])); qsort(lpWords, nWordsCount, WORDS_MAX_SIZE * sizeof(char), compare); puts("Dans le bon ordre :"); for (nI = 0; nI < nWordsCount; nI++) puts(lpWords[nI]); return 0; }