Zum Inhalt springen

Empfohlene Beiträge

Geschrieben

Hallo kann mir jemande in diese Aufgabe helfen ???

Gegeben sei die folgende Datenstruktur für Speicherung von Studentendaten

typedef struct {

char Name[20];

unsigned long Matrikelnummer;

} StudentT;

wowie eine Funktion compareByName, die zwei Studentendatensätze s1 und s2 nach

dem Namen vergleicht. Die Funktion liefert einen Wert < 0 zurück, falls der Name von s1

kleiner ist als der von s2, 0 falls die Namen gleich sind und einen Wert > 0 falls Name von

s2 größer als der von s1.

int compareByName(StudentT s1, StudentT s2){

return strcmp(s1.Name, s2.Name);

}

1. Definieren Sie eine Funktion sortStudents, welche ein Array von StudentTElementen

nach einem durch eine „Call-Back“-Funktion vorgegebenes Vergleichskriterium sortiert.

Der Funktion sollen drei Parameter übergeben werden: s = zu sortierendes Array von

Studenten, n = Anzahl Elemente des Arrays und cmp = Zeiger auf eine

Vergleichsfunktion mit einer Signatur entsprechend den obigen Vergleichsfunktionen.

Verwenden Sie für die Implementierung einen Sortieralgorithmus Ihrer Wahl.

2. Schreiben Sie ein Hauptprogramm, in dem ein (kleines, mindestens drei Elemente

umfassendes) Array von Studenten definiert und initialisiert wird. Notieren Sie die

Anweisungen um dieses Array mit Hilfe der Funktion sortStudents nach Name bzw.

nach Matrikelnummer zu sortieren.

danke für Ihre Hilfe

Geschrieben

für 1)-->

#include <stdlib.h>

int compareByName(const void* _s1, const void* _s2)

{

if (*s1 > *s2) return1;

else

if(*s1 == *s2) return 0;

else return -1;

}

void Student()

{

char* s=studentT;

qsort((void*) s,20,sizeof(s[0]),compareByName);

}

???

Erstelle ein Benutzerkonto oder melde Dich an, um zu kommentieren

Du musst ein Benutzerkonto haben, um einen Kommentar verfassen zu können

Benutzerkonto erstellen

Neues Benutzerkonto für unsere Community erstellen. Es ist einfach!

Neues Benutzerkonto erstellen

Anmelden

Du hast bereits ein Benutzerkonto? Melde Dich hier an.

Jetzt anmelden

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...