Hi, hab da ein Adressbuch versucht zu programmieren. (für die Schule)
Leider bekomm ich nicht gepeilt wi die Suchfunktion funktionieren soll.
mein Programm sieht folgendermaßen aus:
Also ich schreib die Daten folgendermaßen in die Datein (hab eine Indexdatei und eine in der ich alle anderen Daten reinschreib)
Aber die Suchfunktion kann so wie ich es hab garnicht funktionieren also, wäre echt nett wenn mir einer von euch helfen könnte.
In die Datei wird es richtig geschrieben, and dem kann es nicht liegen.
P.S.: Programmiert wird das Ganze in Borland C++ (Standard Editor in der schule)
Leider bekomm ich nicht gepeilt wi die Suchfunktion funktionieren soll.
mein Programm sieht folgendermaßen aus:
PHP:
#include<stdio.h>
#include<iostream.h>
#include<conio.h>
#include<ctype.h>
#include<string.h>
struct daten
{
int id;
char name[20];
char nachname[20];
char adr[40];
char tel[20];
};
void eingabe (daten&, int);
int suchen (int);
void main ()
{
daten per;
char jn, auswahl;
int anzahl, fertig, y, i, suchid;
FILE *daten;
do
{
clrscr();
fertig = 1;
textcolor(LIGHTGRAY);
cout << "1.Projekt: Adressbuch\n";
cout << "*********************\n";
cout << "<E>...Eingabe\n";
cout << "<S>...Suchen\n";
cout << " <A>...Andern\n";
cout << " <L>...L”schen\n";
cout << "<F>...Fertig\n";
cout << "*********************\n";
cout << "Ihre Eingabe: ";
auswahl = getche();
auswahl = toupper(auswahl);
switch (auswahl)
{
case 'E':
gotoxy(15,3 );
textcolor(YELLOW+BLINK);
cprintf("<--\r\n");
textcolor(LIGHTGRAY);
gotoxy(1,9);
clreol();
cout << "ID:\t ";
cin >> per.id;
cout << "Vorname:\t ";
cin >> per.name;
cout << "Nachname:\t ";
cin >> per.nachname;
cout << "Adresse:\t ";
cin >> per.adr;
cout << "Tel:\t ";
cin >> per.tel;
eingabe (per, per.id);
fertig =0;
break;
case 'S':
gotoxy(14,4 );
textcolor(YELLOW+BLINK);
cprintf("<--\r\n");
textcolor(WHITE);
gotoxy(1,9);
clreol();
cout << "\nGeben sie die ID der zu suchenden Person ein:\t";
cin >> per.id;
fertig = 0;
break;
case 'A':
gotoxy(16,5 );
textcolor(YELLOW+BLINK);
cprintf("<--\r\n");
textcolor(WHITE);
gotoxy(1,9);
clreol();
cout << "ID:\n";
getch();
fertig = 0;
break;
case 'L':
gotoxy(17,6 );
textcolor(YELLOW+BLINK);
cprintf("<--\r\n");
textcolor(WHITE);
gotoxy(1,9);
clreol();
cout << "ID:\n";
getch();
fertig = 0;
break;
case 'F':
fertig = 1;
textcolor(LIGHTGRAY);
break;
default:
fertig = 0;
break;
}
} while (fertig == 0);
}
void eingabe(daten &per, int idu)
{
FILE *idx, *bin;
bin = fopen( "H:\\adress\\daten.bin" , "ab" );
fwrite (&per, sizeof(per), 1, bin);
fclose(bin);
idx = fopen("H:\\adress\\index.idx" , "ab");
fwrite (&idu, sizeof(idu), 1, idx);
fclose(idx);
}
Also ich schreib die Daten folgendermaßen in die Datein (hab eine Indexdatei und eine in der ich alle anderen Daten reinschreib)
PHP:
void eingabe(daten &per, int idu)
{
FILE *idx, *bin;
bin = fopen( "H:\\adress\\daten.bin" , "ab" );
fwrite (&per, sizeof(per), 1, bin);
fclose(bin);
idx = fopen("H:\\adress\\index.idx" , "ab");
fwrite (&idu, sizeof(idu), 1, idx);
fclose(idx);
}
Aber die Suchfunktion kann so wie ich es hab garnicht funktionieren also, wäre echt nett wenn mir einer von euch helfen könnte.
In die Datei wird es richtig geschrieben, and dem kann es nicht liegen.
P.S.: Programmiert wird das Ganze in Borland C++ (Standard Editor in der schule)
Zuletzt bearbeitet: