Advertisement
Guest User

Untitled

a guest
Mar 26th, 2017
91
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C 3.48 KB | None | 0 0
  1. #include <stdio.h>
  2. #include <stdlib.h>
  3.  
  4. typedef struct dane
  5. {
  6.     int id;
  7.     char nazwisko[15];
  8.     char imie[15];
  9.     char miasto[15];
  10.     char ulica[15];
  11.     char numer[6];
  12.     char kod_pocztowy[7];
  13.     char poczta[15];
  14.     struct adresy *pierwszya;
  15.     struct numery *pierwszyn;
  16.     struct dane *nastepna;
  17.     }dane;
  18.  
  19.  
  20.     struct adresy {
  21.         char mail[20];
  22.         struct adresy *nastepnya;
  23.     }adresy;
  24.  
  25.     struct numery {
  26.         char telefon[10];
  27.         struct numery *nastepnyn;
  28.     }numery;
  29.  
  30. struct adresy *dodawaniea(struct adresy *pierwszy){
  31.  
  32.     struct adresy *adres = (struct adresy *)malloc(sizeof(struct adresy));
  33.     scanf(" %s",adres->mail);
  34.     adres->nastepnya=pierwszy;
  35.     pierwszy=adres;
  36.     return pierwszy;
  37. }
  38. struct numery *dodawanien(struct numery *pierwszy){
  39.  
  40.     struct numery *numer = (struct numery *)malloc(sizeof(struct numery));
  41.     scanf(" %s",numer->telefon);
  42.     numer->nastepnyn=pierwszy;
  43.     pierwszy=numer;
  44.     return pierwszy;
  45. }
  46.  
  47. struct dane *wypelnianie(struct dane *pierwsza)
  48. {
  49.     char i;
  50.  
  51.     system("cls");
  52.     struct dane *osoba = (struct dane *)malloc(sizeof(struct dane));
  53.     printf("ID: \n");
  54.     scanf(" %d",&osoba->id);
  55.     printf("Nazwisko: \n");
  56.     scanf(" %s",osoba->nazwisko);
  57.     printf("Imie: \n");
  58.     scanf(" %s",osoba->imie);
  59.     printf("Miasto: \n");
  60.     scanf(" %s",osoba->miasto);
  61.     printf("Ulica: \n");
  62.     scanf(" %s",osoba->ulica);
  63.     printf("Numer budynku/mieszkania: \n");
  64.     scanf(" %s",osoba->numer);
  65.     printf("Kod pocztowy: \n");
  66.     scanf(" %s",osoba->kod_pocztowy);
  67.     printf("Poczta: \n");
  68.     scanf(" %s",osoba->poczta);
  69.     osoba->pierwszyn=NULL;
  70.     do {
  71.     printf("Telefon: \n");
  72.     osoba->pierwszyn=dodawanien(osoba->pierwszyn);
  73.     puts("czy chcesz podac wiecej numerow T/N");
  74.     scanf(" %c",&i);
  75.     } while(i!='N'&&i!='n');
  76.     osoba->pierwszya=NULL;
  77.     do {
  78.     printf("Mail: \n");
  79.     osoba->pierwszya=dodawaniea(osoba->pierwszya);
  80.     puts("czy chcesz podac wiecej emaili T/N");
  81.     scanf(" %c",&i);
  82.     } while(i!='N'&&i!='n');
  83.     osoba->nastepna=pierwsza;
  84.     pierwsza=osoba;
  85. return pierwsza;
  86. }
  87. void wyswietlanie(struct dane *pierwsza){
  88. while (pierwsza){
  89.         printf("%d ", pierwsza->id);
  90.         printf("%s ", pierwsza->nazwisko);
  91.         printf("%s ", pierwsza->imie);
  92.         printf("%s ", pierwsza->miasto);
  93.         printf("%s ", pierwsza->ulica);
  94.         printf("%s ", pierwsza->numer);
  95.         printf("%s ", pierwsza->kod_pocztowy);
  96.         printf("%s ", pierwsza->poczta);
  97.  
  98.         while(pierwsza->pierwszyn){
  99.           printf("%s ",pierwsza->pierwszyn->telefon);
  100.             pierwsza->pierwszyn=(pierwsza->pierwszyn->nastepnyn);
  101.         }
  102.  
  103.         while(pierwsza->pierwszya){
  104.             printf("%s ",pierwsza->pierwszya->mail);
  105.             pierwsza->pierwszya=(pierwsza->pierwszya->nastepnya);
  106.         }
  107.  
  108.  
  109.         puts("");
  110.         pierwsza=pierwsza->nastepna;
  111.     }
  112.     puts("Aby kontynuowac wcisnij dowolny przycisk");
  113.     getch();
  114. }
  115. void menu(struct dane *pierwsza){
  116.         char i;
  117.  
  118.         do
  119.         {
  120.             system("cls");
  121.             printf("1. Dodawanie \n");
  122.             printf("2. Wyswietlanie\n");
  123.             printf("0. Wyjscie\n\n");
  124.             printf("Twoj wybor: ");
  125.             scanf(" %c",&i);
  126.                         if (i == '1') pierwsza=wypelnianie(pierwsza);
  127.             else if (i == '2') wyswietlanie(pierwsza);
  128.         } while (i != '0');
  129.     }
  130.  
  131.  
  132. int main()
  133. {
  134.         struct dane *pierwsza=NULL;
  135.  
  136.     menu(pierwsza);
  137.  
  138.     return 0;
  139. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement