/*** File Name : qsort_example.c Purpose : Creation Date : 09-02-2010 Last Modified : Di 09 Feb 2010 19:57:06 CET Created By : ***/ #include #include #include int find(char x, char *l) { int i; for (i=0; l[i] != x; i++); return i; } static int cmp(const void *a, const void *b) { /*char A[] = "rovhupdtjbxwaqzleimfgcksny\0";*/ char A[] = "abcdefghijklmnopqrstuvwxyz\0"; int x = find(*(char*)a, A), y = find(*(char*)b, A); if (x==y) return 0; else if (xy) return 1; } int main(int argc, char* argv[]) { int i; qsort(&argv[1], argc - 1, sizeof(char*), cmp); for (i=1; i < argc; ++i) printf("%s\n", argv[i]); return 0; }