Carnby1021

baza danych

Apr 28th, 2016
72
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C 3.22 KB | None | 0 0
  1. #define _CRT_SECURE_NO_WARNINGS
  2. #include<stdio.h>
  3. #include<malloc.h>
  4. #include<stdlib.h>
  5. #include<conio.h>
  6.  
  7. struct wizytowka{
  8.     char imie[10];
  9.     char nazwisko[10];
  10.     int numer_telefonu;
  11. }wiza[100];
  12.  
  13. struct wizytowka Dodaj(){
  14.    
  15.     struct wizytowka *d;
  16.     d=(struct wizytowka*)malloc(sizeof(struct wizytowka));
  17.  
  18.     printf("Podaj Imie: ");
  19.     scanf("%s",d->imie);
  20.     printf("Podaj Nazwisko: ");
  21.     scanf("%s",d->nazwisko);
  22.     printf("Podaj Numer Telefonu: ");
  23.     scanf("%d",&d->numer_telefonu);
  24.     system("cls");
  25.  
  26.     return *d;
  27.  
  28. }
  29. void wyswietl_all(int ile){
  30.     int i;
  31.     if(ile==0){printf("Baza jest pusta");}
  32.     else
  33.     {
  34.     for(i=0;i<ile;i++){
  35.         printf("Wizytowka nr %d\n",i+1);
  36.         printf("Imie %s\n",wiza[i].imie);
  37.         printf("Nazwisko %s\n",wiza[i].nazwisko);
  38.         printf("Numer_Telefonu %d\n",wiza[i].numer_telefonu);
  39.         printf("\n");
  40.     }
  41.     }
  42.     getchar();getchar();
  43.     system("cls");
  44. }
  45.  
  46. void Aktualizuj(int ilosc){
  47.     int nr;
  48.     printf("Podaj nr wizytowki,ktora chcesz edytowac");
  49.     scanf("%d",&nr);
  50.     system("cls");
  51.     if((nr<=ilosc)&&(nr>0)){
  52.    
  53.     printf("Zmien Imie");
  54.     scanf("%s",wiza[nr-1].imie);
  55.     printf("Zmien Nazwisko");
  56.     scanf("%s",wiza[nr-1].nazwisko);
  57.     printf("Zmien Numer_Telefonu");
  58.     scanf("%d",&wiza[nr-1].numer_telefonu);
  59.     system("cls");
  60. }
  61. else
  62. {
  63.     printf("Nie ma takiego elementu");
  64.     getchar();getchar();
  65.     system("cls");
  66. }
  67. }
  68. int Usun(int ile){
  69.     int nr,i;
  70.     printf("Podaj nr wizytowki,ktora chcesz usunac");
  71.     scanf("%d",&nr);
  72.     if((nr-1<ile)&&(nr>0)){
  73.     for(i=nr-1;i<ile-1;i++){
  74.         wiza[i]=wiza[i+1];
  75.     }
  76.     system("cls");
  77.     return 1;
  78.     }
  79.     else
  80.     {
  81.         printf("Nie ma takiego elementu");
  82.         getchar();getchar();
  83.         system("cls");
  84.         return 0;
  85.     }
  86. }
  87. void Zapisz_plik(int ile){
  88.     int i;
  89.     FILE *pliczek;
  90.     pliczek=fopen("Baza Danych.txt","w");
  91.  
  92.     if (pliczek == NULL){
  93.     printf("Blad otwarcia pliku dane.txt!\n");
  94.     return;
  95.     }
  96.  
  97.     for(i=0;i<ile;i++){
  98.     fprintf(pliczek,"%s\n",wiza[i].imie);
  99.     fprintf(pliczek,"%s\n",wiza[i].nazwisko);
  100.     fprintf(pliczek,"%d\n",wiza[i].numer_telefonu);
  101.     }
  102.  
  103.     fclose(pliczek);
  104.     exit(0);
  105. }
  106. int Zaladuj_Plik(){
  107.     int i =0;
  108.     FILE *pliczek;
  109.     pliczek=fopen("Baza Danych.txt","r");
  110.  
  111.     if (pliczek == NULL){
  112.     printf("Blad otwarcia pliku dane.txt!\n");
  113.     return 0;
  114.     }
  115.  
  116.     while(!feof(pliczek)){
  117.     fscanf(pliczek,"%s",wiza[i].imie);
  118.     fscanf(pliczek,"%s",wiza[i].nazwisko);
  119.     fscanf(pliczek,"%d",&wiza[i].numer_telefonu);  
  120.     i++;
  121.     }
  122.     i=i-1;
  123.     return i;
  124.     fclose(pliczek);
  125.  
  126. }
  127. int main(){
  128.     char wybor;
  129.     int i=0,x=0;
  130.  
  131.     while(1){
  132.     printf("=============Baza Danych=============\n\n");
  133.     printf("a; Zaladuj Baze Danych\n");
  134.     printf("c: Stworz nowy wpis\n");
  135.     printf("r: Wyswietl dane\n");
  136.     printf("u: Aktualizuj istniejace wpisy\n");
  137.     printf("d: Kasuj istniejace wpisy\n");
  138.     printf("s: Zapisz i wyjdz\n");
  139.     printf("q: Wyjdz\n");
  140.  
  141.     printf("Wybierz opcje:");
  142.     wybor=_getch();
  143.     system("cls");
  144.  
  145.     switch(wybor){
  146.     case 'c':
  147.         wiza[i]=Dodaj();
  148.         i++;
  149.         break;
  150.     case 'r':
  151.         wyswietl_all(i);
  152.         break;
  153.     case'u':
  154.         Aktualizuj(i);
  155.         break;
  156.     case'd':
  157.         x=Usun(i);
  158.         if(x==1){
  159.         i--;
  160.         }
  161.         break;
  162.     case's':
  163.         Zapisz_plik(i);
  164.         break;
  165.     case'a':
  166.         i=Zaladuj_Plik();
  167.         break;
  168.     case 'q':
  169.         exit(0);
  170.     break;
  171.     default:
  172.         printf("Nieznana opcja\n");
  173.         getchar();
  174.         system("cls");
  175.         break;
  176.     }
  177.  
  178.     }
  179.     return 0;
  180. }
Add Comment
Please, Sign In to add comment