#include #include #include #include #include #include using namespace std; struct osoba { char imie[20]; char nazw[30]; double waga; int iq; int zaj; }; void dodaj(osoba *baza,int i) { system("CLS"); if(baza[i].waga!=0) { printf("To miejsce zajmuje juz inna osoba"); } else { printf("Podaj imie\n"); scanf("%s",&baza[i].imie); printf("Podaj nazwisko\n"); scanf("%s",&baza[i].nazw); printf("Podaj wage\n"); scanf("%lf",&baza[i].waga); printf("Podaj iq\n"); scanf("%d",&baza[i].iq); } } void edytuj(osoba*baza,int i) { system("CLS"); printf("Podaj imie\n"); scanf("%s",&baza[i].imie); printf("Podaj nazwisko\n"); scanf("%s",&baza[i].nazw); printf("Podaj wage\n"); scanf("%lf",&baza[i].waga); printf("Podaj iq\n"); scanf("%d",&baza[i].iq); } void wyswietl(osoba *baza,int p) { system("CLS"); for(p=0; p<20; p++) { printf("%2d\tImie: %10s\tNazwisko: %10s\tWaga: %4lf\tIQ:%4d\n",p+1,baza[p].imie,baza[p].nazw,baza[p].waga,baza[p].iq); } } void usun(osoba *baza,int k) { system("CLS"); baza[k].imie[0]=0; baza[k].nazw[0]=0; baza[k].waga=0; baza[k].iq=0; } void pobierz(osoba *baza,int ile) { FILE *h; h=fopen("baza.txt","rb"); fread(baza,sizeof(osoba),ile,h); fclose(h); system("CLS"); } void zapisz(osoba *baza,int ile) { FILE *h; h=fopen("baza.txt","wb"); fwrite(baza,sizeof(osoba),ile,h); fclose(h); system("CLS"); } int main() { osoba baza[20]; int i,k,p,x,b=1,f; char y; // FILE *h; for(f=0; f<20; f++) { baza[f].imie[0]=0; baza[f].nazw[0]=0; baza[f].waga=0; baza[f].iq=0; } do { printf("\n d - dodaj\n u - usun\n e - edytuj\n w - wyswietl\n x - wyjscie\n\n\n z - zapisz baze\n p - pobierz baze z pliku\n"); scanf("%c",&y); switch(y) { case 'd': printf("Ktora komorke chcesz wypelnic?"); scanf("%d",&x); x=x-1; dodaj(baza,x); break; case 'e': printf("Ktora komorke chcesz edytowac?"); scanf("%d",&x); x=x-1; edytuj(baza,x); break; case 'u': printf("Ktora komorke chcesz wyczyscic?"); scanf("%d",&x); x=x-1; usun(baza,x); break; case 'w': wyswietl(baza,20); break; case 'x': b=0; break; case 'z': zapisz(baza,20); break; case 'p': pobierz(baza,20); break; } } while(b!=0); return 0; }