hvordan finder jeg medlemmerne og hvordan fliipper jeg
Du er her : Eksperten : Programmering : C/C++ : hvordan finder jeg medlemmerne og hvordan fliipper jeg :hvordan finder jeg medlemmerne og hvordan fliipper jeg 30 point fra jerrymouse
hvordan finder jeg medlemmer og hvordanb flipper ejg på
'+' '-'
#include <stdio.h>
#include <conio.h>
#include <string.h>
#include <stdlib.h>
#include <time.h>
#include <dos.h>
#define x 20
#define y 6
#define delay(x) sleep(x/1000)
struct kort{
char navn[30];
char adresse[40];
char postnummer[5];
char telefonnummer[16];
char cprnr[12];
char active_eller_inactive[10];
char password[5];
char indmeldelsesdato[12];
char antal;
};
struct antaltype
{
int tal;
};
int xx, ch, valg;
int I, tal;
unsigned char iMax = 200;
FILE *fptr;
kort kage[200];
antaltype antal[1];
void opretMedlem(void);
void visMedlem(void);
void slet (void);
void main (void)
{
textbackground(9);
if ((fptr = fopen("data.dat","rb")) != NULL)
{
fread(kage,sizeof(kage),1,fptr);
fclose(fptr);
}
else
memset(kage, 0, sizeof(kage));
if ((fptr = fopen("antal.dat","rb")) != NULL)
{
fread(antal,sizeof(antal),1,fptr);
fclose(fptr);
}
else
memset(antal, 0, sizeof(antal));
I = antal[0].tal;
textcolor(RED);
textbackground(BLACK);
clrscr();
gotoxy(x-4,y);
cprintf ("Velkommen til Blockbuster Movie club");
delay (3000);
do
{
clrscr();
gotoxy(x,y-1);
cprintf("Indtast valg: ");
gotoxy(x,y+1);
cprintf("Menu: ");
gotoxy(x,y+3);
cprintf("1: Tilf›ge ny medlem: ");
gotoxy(x,y+4);
cprintf("2: Se & slet medlems data: ");
gotoxy(x,y+5);
cprintf("3: se password: ");
gotoxy(x,y+7);
cprintf("Esc: Quit : ");
valg = getch();
switch (valg)
{
case '1' : // Opret medlem
opretMedlem(); break;
case '2' : // Vis medlem
visMedlem(); break;
case 'x1B': // ESC - afslut
break;
default : // Ugyldig taste - ignorer.
putch('a'); /* Beep */
};
} while (valg != 'x1B');
return;
} // main
void opretMedlem(void)
{
clrscr();
gotoxy(x,y-5);
cprintf("Indtast navn: ");
gets(kage[I].navn);
gotoxy(x,y-4);
cprintf("Indtast cprnr:");
gets(kage[I].cprnr);
gotoxy(x,y-3);
cprintf("Indtast postnummer:");
gets(kage[I].postnummer);
gotoxy(x,y-2);
cprintf("Active_eller_Inactive ?: ");
// gets(kage[I].active_eller_inactive); Laver du ikke dette vha. getch()
ch = getche();
switch(ch)
{
case 'a':
case 'A':strcpy(kage[I].active_eller_inactive, "active");break;
case 'i':
case 'I':strcpy(kage[I].active_eller_inactive, "inactive");break;
}
gotoxy(x,y-1);
cprintf("Indtast adresse :");
gets(kage[I].adresse);
gotoxy(x,y);
cprintf("Indtast telefonnummer :");
gets(kage[I].telefonnummer);
gotoxy(x,y+1);
cprintf("Indtast password :");
gets(kage[I].password);
gotoxy(x,y+2);
cprintf("Indtast indmeldelsesdato :");
gets(kage[I].indmeldelsesdato);
// Opdater kartoteker.
antal[0].tal=I;
fptr = fopen("data.dat","wb");
fwrite(kage,sizeof(kage),1,fptr);
fclose(fptr);
fptr = fopen("antal.dat","wb");
fwrite(antal,sizeof(antal),1,fptr);
fclose(fptr);
delay(2000);
clrscr();
// Næste medlem skal have næste ledige nummer.
I++;
} // opretMedlem
void visMedlem(void)
{
char tXX[4] = "";
// Noget kode til at læse medlems-nummer og checke at det er ok.
clrscr();
gotoxy(x, y-2);
cprintf("Angiv medlemsnummer: ");
gets(tXX);
if ((xx = atoi(tXX) - 1) == 0)
return;
// Vis medlemmet
clrscr();
gotoxy(x,y-6);
cprintf("Nr: %d",xx+1);
gotoxy(x,y-5);
cprintf("navn: %1s",kage[xx].navn);
gotoxy(x,y-4);
cprintf("adresse: %2s",kage[xx].adresse);
gotoxy(x,y-3);
cprintf("telefonnummer: %3s",kage[xx].telefonnummer);
gotoxy(x,y-2);
cprintf("cprnr: %4s",kage[xx].cprnr);
gotoxy(x,y-1);
cprintf("postnummer: %5s",kage[xx].postnummer);
gotoxy(x,y);
cprintf("active_eller_inactive: %6s",kage[xx].active_eller_inactive);
gotoxy(x,y+1);
cprintf("password: %7s",kage[xx].password);
gotoxy(x,y+2);
cprintf("indmeldelsesdato: %8s",kage[xx].indmeldelsesdato);
gotoxy(x,y+3);
cprintf("antal: %9s",kage[xx].antal);
getch();
} // visMedlem