Programmieren - alles kontrollieren 4.938 Themen, 20.667 Beiträge

In C 10 Namen sortieren

faby71 / 3 Antworten / Flachansicht Nickles

Hallo,


Ich möchte:


1- 10 Namen (Strings)-------> Länge 20 anlegen / einlesen


2- Sortieren


3- Ausgeben


ich habe bis jetzt:


#include<stdio>
#include<conio.h>
#include<string.h>


main()
{
 int n,poskl,j,h;
   char namen[5][20];    


   for (n=0; n<5; n++) 
   {
    printf("Name Nr %d: ",n+1);
    scanf("%s",namen[n]);
   }


   //HILFE WIE KANN ICH SORTIEREN



   for (n=0; n<5; n++) //Achtung von n=0 bis n=4 (n < 5)!!
   {
    printf("%s\n",namen[n]);
   }
   getch();
}

bei Antwort benachrichtigen
mr.escape faby71 „In C 10 Namen sortieren“
Optionen

1. Aus den "5"ern "10"er machen ;)
2. Folgendes vor main() einfügen:

typedef int (__cdecl *COMPARE )(const void *elem1, const void *elem2);
int namecomp(const char *arg1, const char *arg2){
return strcmp(arg1, arg2);
}

3. Folgendes nach "//HILFE WIE KANN ICH SORTIEREN" einfügen:
qsort(namen, 10/*5*/, 20, (COMPARE)namecomp);

4. Fertig.
Sollte der compiler noch meckern, fehlen evtl. einige header. Mault der linker dann sind es fehlende libraries. In allen anderen fällen, war ich wohl schon zu bluna.

mr.escape

"The man who trades freedom for security does not deserve nor will he ever receive either." - Benjamin Franklin"Wer seine Freiheit aufgibt, um Sicherheit zu erreichen, wird beides verlieren." - Georg Christoph Lichtenberg
bei Antwort benachrichtigen