Siemka. Mam taki kod:
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <conio.h>
#define N 50
#define M 1
struct dane{
char imie[N];
char nazwisko[N];
int wiek;
char plec;
char adres[50];
char pesel[N];
int numer;
};
void wprowadz_pacjenta(struct dane[]);
void zapisz_pacjenta(struct dane[]);
void znajdz_pacjenta(struct dane[]);
int main()
{
struct dane baza[M];
int x,i;
do{
puts("Program umozliwia nastepujace opcje:");
puts("1 - Wprowadz pacjenta");
puts("2 - Zapisz pacjenta");
puts("3 - Znajdz pacjenta");
puts("4 - Wyjscie z programu\n");
do{
puts("Wybierz opcje: ");
scanf("%d", &x);
}while(x>4 || x<1);
switch(x)
{
case 1:
{
wprowadz_pacjenta(baza);
break;
}
case 2:
{
zapisz_pacjenta(baza);
break;
}
case 3:
{
znajdz_pacjenta(baza);
break;
}
case 4:
{
exit(1);
break;
}
}
fflush(stdin);
}while(x!=4);
return 0;
}
void wprowadz_pacjenta(struct dane baza[])
{
int i;
char imie[N];
char nazwisko[N];
int wiek;
char plec;
char adres[N];
char pesel[N];
int numer;
for(i=1;i<=1;i++)
{
puts("Podaj imie: ");
gets(imie);
strcpy(baza[i].imie, imie);
fflush(stdin);
puts("Podaj nazwisko: ");
gets(nazwisko);
strcpy(baza[i].nazwisko, nazwisko);
fflush(stdin);
puts("Podaj wiek: ");
scanf("%d", &wiek);
baza[i].wiek = wiek;
fflush(stdin);
puts("Podaj plec");
scanf("%c", &plec);
baza[i].plec = plec;
fflush(stdin);
puts("Podaj adres: ");
gets(adres);
strcpy(baza[i].adres, adres);
fflush(stdin);
puts("Podaj PESEL: ");
gets(pesel);
strcpy(baza[i].pesel, pesel);
fflush(stdin);
puts("Podaj numer choroby: ");
scanf("%d", &numer);
baza[i].numer = numer;
fflush(stdin);
}
}
void zapisz_pacjenta(struct dane baza[])
{
FILE *fp;
int i;
if((fp=fopen("Pacjenci.txt", "a+"))==NULL)
{
puts("Blad otwarcia pliku");
exit(1);
}
for(i=1;i<=M;i++)
{
fprintf(fp, "Imie /t Nazwisko /t Wiek /t Plec /t Adres /t Pesel /t Numer choroby");
fprintf(fp, "%s /t %s /t %d /t %c /t %s /t %s /t %d /t", baza[i].imie, baza[i].nazwisko, baza[i].wiek, baza[i].plec, baza[i].adres, baza[i].pesel, baza[i].numer);
}
fclose(fp);
}
I teraz problemy z którymi nie potrafię sobie poradzić... :D :
- Po odpaleniu programu i wybraniu opcji numer 1 pomija zapytanie o imię i od razu pyta o nazwisko. Nie wiem o co chodzi... xd
- Kiedy wybieram opcję numer 2 to zapisuje mi w pliku chińskie znaczki.
Póki co to wszystko, chociaż nie wiem czy dalej nie będę miał jeszcze problemów :D
Z góry dzięki za pomoc :)