000
27.05.2004, 00:48 Uhr
~planloser
Gast
|
kann jemand diese programm zum laufen bringen? und zwar will ich mit fprintf einige daten speichern aber nach dem kompilieren wird das prog. nur teilweise ausgeführt und dann kommt die meldung: der vorgang "read" konnte nicht auf dem speicher durchgeführt werden... hier mal der quelltext:
C++: |
//* Definition Teilnehmerfeld*//
#include <stdlib.h> #include <stdio.h> #include <string.h> #define ANZ 10 int gesamtanzahl=0; struct Teilnehmer { char vorname [30]; char nachname [30]; int durchwahl ; char email [50]; }; void eingabeEinesTeilnehmers( struct Teilnehmer *, unsigned ); void ausgabe(struct Teilnehmer * ); void speicherung(struct Teilnehmer * );
int main() {
//Feld aller teilnehmer struct Teilnehmer teilnehmerfeld[ANZ]; //Zähler unsigned int i;
//gesamtanzahl der teilnehmer //abfrage mit schleife zur überprüfung ob es im erlaubten bereich liegt sowie ob es sich um eine zahl handelt //die eingegeben wurde
printf("Geben sie die Anzahl der Datensaetze an!<11\n"); scanf("%ud" ,&gesamtanzahl); if (gesamtanzahl > ANZ) { gesamtanzahl=ANZ; printf("Ihre Eingabe wurde auf %d Datensaetze beschraenkt \n",ANZ); } if (gesamtanzahl==0) { printf("bitte Zahlenwert eingeben!!!\n"); while(getchar()!='\n'){;} scanf("%d", &gesamtanzahl); } //*eingabe der einzelenen teilnehmer*// for (i=0; i<gesamtanzahl;i++) eingabeEinesTeilnehmers(teilnehmerfeld,i); //*ausgabe des kompletten teilnehmerfeldes*// ausgabe(teilnehmerfeld); //speicherung speicherung(teilnehmerfeld); FILE *datei_ptr; system("PAUSE"); return 0; } //*Eingabe*// void eingabeEinesTeilnehmers( struct Teilnehmer *feld, unsigned pos) { printf("Eingabe der Daten des %u. Teilnehmers:\n",pos+1); printf("Geben sie den Vornamen ein:\n"); scanf("%s" ,&(feld[pos].vorname)); printf("Geben sie den Nachnamen ein:\n"); scanf("%s", &(feld[pos].nachname)); printf("Geben sie die Durchwahl ein:\n "); if (scanf("%d", &(feld[pos].durchwahl))==0) { printf("bitte Zahlenwert eingeben!!!\n"); while(getchar()!='\n'); scanf("%d", &(feld[pos].durchwahl)); } printf("Geben sie die Email ein:\n "); scanf("%s", &(feld[pos].email)); printf("...............................................................................\n"); }
//*Ausgabe*// void ausgabe(struct Teilnehmer * feld) { unsigned int i; for (i=0;i<gesamtanzahl;i++) printf("%s %s\tdurchwahl:%d\temail:%s\n", feld[i].vorname, feld[i].nachname, feld[i].durchwahl, feld[i].email); } //*Sortieren*//
//Speicherung void speicherung(struct Teilnehmer * feld) { unsigned int i; FILE *datei_txt; char datei[60]; //printf("\n Unter welchen Dateinamen sollen die Datensaetze gesichert werden?:> "); //gets(datei); datei_txt = fopen(datei,"w"); if(datei_txt != 0) { fclose(datei_txt); } for (i=0;i<gesamtanzahl;i++) fprintf(datei_txt,"%s %s\tdurchwahl:%d\temail:%s\n", feld[i].vorname, feld[i].nachname, feld[i].durchwahl, feld[i].email); fclose(datei_txt); }
|
IN DEN LETZTEN "= ZEILEN IST WOHL DER WURM DRIN Dieser Post wurde am 27.05.2004 um 01:42 Uhr von Pablo editiert. |