G
jetz hab ich mal die datei hochgeladen
hab dazu noch die anmelde.txt zum testen und die exe dazu reinkopiert
http://mitglied.lycos.de/chipigoku/Programm/
hoffe ihr könnt mir helfen oO
edit: hab schon ca. die wurzel allen bösens gefunden ^^
2 Gott No 0 0:0 0 Fehler 0 Gesamtpunkte
2 Gott No 0 0:0 0 Fehler 0 Gesamtpunkte
3 Hase D 1942 0:0 0 Fehler 0 Gesamtpunkte
4 Lilith D 1981 0:0 0 Fehler 0 Gesamtpunkte
5 Niko D 1850 0:0 0 Fehler 0 Gesamtpunkte
6 Sascha D 1986 0:0 0 Fehler 0 Gesamtpunkte
7 Sven D 1988 0:0 0 Fehler 0 Gesamtpunkte
8 Basti D 1987 0:0 0 Fehler 0 Gesamtpunkte
9 Hannibal RUS 1945 0:0 0 Fehler 0 Gesamtpunkte
10 Commander D 1984 0:0 0 Fehler 0 Gesamtpunkte
11 Peter D 1983 0:0 0 Fehler 0 Gesamtpunkte
12 Mathias D 1987 0:0 0 Fehler 0 Gesamtpunkte
13 Martin 1 D 1985 0:0 0 Fehler 0 Gesamtpunkte
14 Bartholomäus D 1971 0:0 0 Fehler 0 Gesamtpunkte
15 Samuel D 1980 0:0 0 Fehler 0 Gesamtpunkte
das ist die bildschirmausgabe, die er macht, wenn man die ergebnisse eines rennens macht eingibt. ich hab die dateien geschlossen und hab sie in der gleichen funktion geöffnet. dann hab ich die einzelnen blöcke ruasgelesen und wiedergegeben. dass is halt dann das endergebnis.
woran liegt das? ich zeig mal die funktion:
void EingErgebnisse()
{
int Auswahl,Wiederholung[15]={0},i=0,j=0,k=0;
char ZwSpeicher[15],ZwSpeicher2[15];
struct TBiathleten tSpeicher;
do{
system("cls");
printf("Fuer Welches Renen wollen Sie die Ergebnisse eintragen?\n(1-6 bzw. 7 fuer Ende)\n");
scanf("%d",&Auswahl);
}while(Auswahl<=0 || Auswahl>7);
if(Auswahl<7)
{
sprintf(ZwSpeicher,"Rennen%d.txt",Auswahl);
sprintf(ZwSpeicher2,"RenErg%d.txt",Auswahl);
dateizeiger=fopen(ZwSpeicher,"rb");
if(dateizeiger!=NULL)
{
dateizeiger2=fopen(ZwSpeicher2,"wb");
for(i=0;i<15;i++)
{
system("cls");
printf("=========================%s=========================\n\n",ZwSpeicher);
printf("Noch einzutragenen Biathleten: %d\n",15-i);
for(j=0;j<15;j++)
{
if(k==5)
{
printf("\n");
k=0;
}
if(Wiederholung[j]==1)
{
fseek(dateizeiger,(j)*sizeof(TBiathleten),SEEK_SET);
fread(&tSpeicher,sizeof(TBiathleten),1,dateizeiger);
printf("%d. %s ",j+1, tSpeicher.sName);
k++;
}
}
do{
printf("\n\nBitte geben Sie die Startnummer ein: ");
scanf("%d",&tSpeicher.sStartnummer);
}
while(Wiederholung[(tSpeicher.sStartnummer)-1]!=0||(tSpeicher.sStartnummer>=16&&tSpeicher.sStartnummer<=0));
fseek(dateizeiger,((tSpeicher.sStartnummer)-1)*sizeof(TBiathleten),SEEK_SET);
fread(&tSpeicher,sizeof(TBiathleten),1,dateizeiger);
printf("\nDer Name des Laeufers lautet: %s\n\n",tSpeicher.sName);
printf("Bitte geben Sie die Laufzeit ein (MIN:SEC): ");
scanf("%d:%d",&tSpeicher.sMinuten,&tSpeicher.sSekunden);
printf("\nBitte geben Sie die Fehlversuche ein: ");
scanf("%d",&tSpeicher.sFehlversuche);
tSpeicher.sGesamtpunktzahl=((tSpeicher.sFehlversuche)*20)+((tSpeicher.sMinuten)*60)+tSpeicher.sSekunden;
printf("%d\n",tSpeicher.sGesamtpunktzahl);
Wiederholung[(tSpeicher.sStartnummer)-1]=1;
fwrite(&tSpeicher,sizeof(TBiathleten),1,dateizeiger2);
}
}
else printf("Fehler! Es gibt noch keine Aufstellung für das %d.te Rennen!",Auswahl);
fclose(dateizeiger);
fclose(dateizeiger2);
_getch();
}
}
wo is genau der haken jetzt?