Hallo!
Mein Name ist Markus. Ich habe eine Frage.
Mein C-Compiler: Visual Studio6.0
Habe folgenden Code compiliert
Datei struktur.h
struct mannschaft
{
char name[30];
struct mannschaft *next;
};
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include "struktur.h"
void ausgabe(struct mannschaft *zeiger);
void hinzu(char name[], struct mannschaft *zeiger);
struct mannschaft *anfang=NULL;
int main()
{
char name[30];
int wert, anzahl;
do
{
printf("Bitte geben Sie die Anzahl an Mannschaften ein: ");
wert=scanf("%d", &anzahl);
fflush(stdin);
}
while(wert<1);
while(anzahl>0)
{
do
{
printf("Bitte Namen eingeben: ");
wert=scanf("%s", &name);
fflush(stdin);
}
while(wert < 1);
hinzu(name, anfang);
--anzahl;
}
ausgabe(anfang);
return 0;
}
void hinzu(char name[], struct mannschaft *zeiger)
{
if(zeiger == NULL)
{
zeiger=(struct mannschaft *) malloc(sizeof(struct mannschaft));
if(zeiger==NULL)
{
printf("Nicht genug Speicher vorhanden");
return;
}
else
{
strcpy(zeiger
name, name);
zeiger
next=NULL;
}
}
else
{
hinzu(name, zeiger
next);
}
}
void ausgabe(struct mannschaft *zeiger)
{
if(zeiger!=NULL)
{
printf("%s\n", zeiger
name);
ausgabe(zeiger
next);
}
}
Es soll eine einfache verkette Liste werden.
Ich möchte alle Einträge in die Kette einfügen.
Aber irgendwie funtkioniert es nicht!
Ich weiß nicht wieso.
Kann mir jemand weiterhelfen????
Bin für jede Hilfe dankbar
Mfg Markus