Advertisement
Guest User

Untitled

a guest
Nov 30th, 2015
76
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C 17.15 KB | None | 0 0
  1. #include <stdio.h>
  2. #include <stdlib.h>
  3. #include <fcntl.h>
  4. #include <sys/types.h>
  5. #include <sys/stat.h>
  6. #include <errno.h>
  7. #include <string.h>
  8. #include <time.h>
  9. #include <unistd.h>
  10. #include <sys/ioctl.h>
  11. #include <sys/ipc.h>
  12. #include <sys/wait.h>
  13. #include <sys/msg.h>
  14.  
  15. struct s_keres {
  16.     char nev[30];
  17.     char varos[30];
  18.     char cim[30];
  19.     char ajandek[30];
  20.     int datum;
  21.     int szallitva;
  22. };
  23.  
  24. struct uzenet {
  25.      long mtype;//ez egy szabadon hasznalhato ertek, pl uzenetek osztalyozasara
  26.      char mtext [ 1024 ];
  27. };
  28.  
  29. void menuMegjelenitese(){
  30.     printf("1 - Uj keres hozzaadasa\n");
  31.     printf("2 - Keresek listazasa\n");
  32.     printf("3 - Keresek listazasa varos szerint\n");
  33.     printf("4 - Keresek listazasa ajandek szerint\n");
  34.     printf("5 - Ajandekok szallitasa megadott varosba.\n");
  35.     printf("6 - Ajandektipus szallitasa mindenhova.\n");
  36.     printf("CTRL + C - Kilepes\n");
  37. }
  38.  
  39. void keresTorlese(char nev[30]) {
  40.     if( access("db", F_OK ) == -1 ) {
  41.     printf("nem letezik a fajl, eloszor adjon hozza kerest!\n");
  42.     printf("\nfolytatashoz nyomjon entert\n");
  43.     int c;
  44.     c = getchar();
  45.     getchar();
  46.     return;
  47.     } else {
  48.  
  49.     FILE *file=fopen("db","r");
  50.     FILE *tempfile=fopen("temp_db","w");
  51.  
  52.     struct s_keres keres;
  53.     char line[500];
  54.  
  55.     while(fgets(line, 500, file) != NULL) {
  56.         sscanf(line, "%s %s %s %s %i\n", keres.nev, keres.varos,
  57.         keres.cim, keres.ajandek, &keres.datum);
  58.        
  59.     if (strcmp(keres.nev, nev)) {
  60.         fprintf(tempfile, "%s %s %s %s %i\n", keres.nev, keres.varos,  keres.cim, keres.ajandek, keres.datum);
  61.     }
  62.     }
  63.     fclose(file);
  64.     fflush(tempfile);
  65.     fclose(tempfile);
  66.     rename("temp_db", "db");
  67.     }
  68. }
  69.  
  70. void ujKeres() {
  71.  
  72.     FILE *file=fopen("db","a+");
  73.     struct s_keres keres;
  74.     char ch;
  75.  
  76.     printf("Uj rekord hozzaadasa\n");
  77.     printf("Mi a gyerek neve?\n");
  78.     scanf("%s", keres.nev);
  79.     if ((kertMar(keres.nev))==1) {
  80.         printf("O mar kert, toroljuk az elozo kerest? Ha igen nyomjon 'T' gombot.\n");
  81.         scanf("\n%c", &ch);
  82.         if ((ch == 't') || (ch== 'T')) {
  83.             fclose(file);
  84.             keresTorlese(keres.nev);
  85.             FILE *file=fopen("db","a+");
  86.         } else {
  87.             return;
  88.         }
  89.     }
  90.  
  91.     printf("Varos neve?\n");
  92.     scanf("%s", keres.varos);
  93.  
  94.     printf("Cim?\n");
  95.     scanf("%s", keres.cim);
  96.    
  97.     printf("Mi legyen az ajandek? baba, auto, labda, kirako, szinezo es konyv valaszthato\n");
  98.     scanf("%s", keres.ajandek);
  99.     while (!((strcmp(keres.ajandek,"baba")==0 || strcmp(keres.ajandek,"auto")==0 || strcmp(keres.ajandek,"labda")==0
  100.            ||strcmp(keres.ajandek,"kirako")==0 || strcmp(keres.ajandek,"szinezo")==0 || strcmp(keres.ajandek,"konyv")==0)))
  101.            {
  102.                printf("\nhibas ertek, adjon meg ujat!\n");
  103.                  scanf("%s", keres.ajandek);
  104.            }
  105.    
  106.     int mytime = time(NULL);
  107.     keres.datum=mytime;
  108.     keres.szallitva = 0;
  109.  
  110.     fprintf (file, "%s %s %s %s %i %i\n",
  111.             keres.nev,  keres.varos, keres.cim, keres.ajandek, keres.datum, keres.szallitva);
  112.     fclose(file);
  113. }
  114.  
  115. int kertMar(char nev[30]){ //0 ha meg nem kert, es 1 ha mar kert
  116.     if( access("db", F_OK ) == -1 ) {
  117.     return 0;
  118.     } else {
  119.     FILE *file=fopen("db","r");
  120.     struct s_keres keres;
  121.     char line[500];
  122.     while(fgets(line, sizeof(line), file)) {
  123.         sscanf (line, "%s %s %s %s %i\n", keres.nev, keres.varos,
  124.         keres.cim, keres.ajandek, &keres.datum);
  125.        
  126.         if (strcmp(keres.nev, nev) == 0) {
  127.             return 1;
  128.         }
  129.     }
  130.     fclose(file);
  131.  
  132.     return 0;
  133. }
  134. }
  135.  
  136. int varosraSzur(char p_varos[30]){
  137.     int keresekSzama = 0;
  138.     int osszKeresekSzama = 0;
  139.    if ( access("db", F_OK ) == -1 ) {
  140.         printf("nem letezik a fajl, eloszor adjon hozza kerest!\n");
  141.         printf("\nfolytatashoz nyomjon entert\n");
  142.         int c;
  143.         c = getchar();
  144.         getchar();
  145.         return;
  146.     } else {
  147.         FILE *f=fopen("db","r");
  148.         struct s_keres keres;
  149.         char line[500];
  150.         char varos[30];
  151.         if (0 == strcmp(p_varos, "beolvas")) {
  152.             printf("Mi a varos neve?\n");
  153.             scanf("%s", varos);
  154.         } else {
  155.             strcpy(varos, p_varos);
  156.         }
  157.         while (fgets(line, sizeof(line), f)) {
  158.             sscanf (line, "%s %s %s %s %i\n", keres.nev,
  159.             keres.varos, keres.cim, keres.ajandek, &keres.datum);
  160.             char buff[100];
  161.             time_t recdate = keres.datum;
  162.             strftime (buff, 100, "%Y-%m-%d %H:%M:%S", localtime(&recdate));
  163.  
  164.             if ( !strcmp(keres.varos, varos)) {
  165.                 keresekSzama = keresekSzama + 1;
  166.                 printf  ("%s %s %s %s %s\n", keres.nev, keres.varos, keres.cim, keres.ajandek, buff);
  167.             }
  168.             osszKeresekSzama = osszKeresekSzama + 1;
  169.         }
  170.         fclose(f);
  171.         if (keresekSzama == 0) {
  172.             printf("Nem volt ilyen varos %i keresbol\n.", osszKeresekSzama);
  173.             return 0;
  174.         } else {
  175.             printf("Keresek szama ebbol a varosbol %i osszesen: %i\n", keresekSzama, osszKeresekSzama);
  176.             return 1;
  177.         }
  178.         /*
  179.         printf("\nfolytatashoz nyomjon entert\n");
  180.         int c;
  181.         c = getchar();
  182.         getchar();
  183.         */
  184.     }
  185. }
  186.  
  187. int ajandekraSzur(char p_ajandek[30]){
  188.     int keresekSzama = 0;
  189.     int osszKeresekSzama = 0;
  190.    if ( access("db", F_OK ) == -1 ) {
  191.         printf("nem letezik a fajl, eloszor adjon hozza kerest!\n");
  192.         printf("\nfolytatashoz nyomjon entert\n");
  193.         int c;
  194.         c = getchar();
  195.         getchar();
  196.         return;
  197.     } else {
  198.         FILE *f=fopen("db","r");
  199.         struct s_keres keres;
  200.         char line[500];
  201.         char ajandek[30];
  202.         if (0 == strcmp(p_ajandek, "beolvas")) {
  203.             printf("Melyik ajandekra szurjunk?\n");
  204.             scanf("%s", ajandek);
  205.         } else {
  206.             strcpy(ajandek, p_ajandek);
  207.         }
  208.        
  209.         while (fgets(line, sizeof(line), f)) {
  210.             sscanf (line, "%s %s %s %s %i\n", keres.nev,
  211.             keres.varos, keres.cim, keres.ajandek, &keres.datum);
  212.             char buff[100];
  213.             time_t recdate = keres.datum;
  214.             strftime (buff, 100, "%Y-%m-%d %H:%M:%S", localtime(&recdate));
  215.  
  216.             if ( !strcmp(keres.ajandek, ajandek)) {
  217.                 keresekSzama = keresekSzama + 1;
  218.                 printf  ("%s %s %s %s %s\n", keres.nev, keres.varos, keres.cim, keres.ajandek, buff);
  219.             }
  220.             osszKeresekSzama = osszKeresekSzama + 1;
  221.         }
  222.         fclose(f);
  223.         if (keresekSzama == 0) {
  224.             printf("Nem kert meg senki ilyen ajandekot %i keresbol\n.", osszKeresekSzama);
  225.             return 0;
  226.         } else {
  227.             printf("Keresek szama ilyen ajandekbol %i osszesen: %i\n", keresekSzama, osszKeresekSzama);
  228.             return 1;
  229.         }
  230.         /*
  231.         printf("\nfolytatashoz nyomjon entert\n");
  232.         int c;
  233.         c = getchar();
  234.         getchar();
  235.         */
  236.     }
  237. }
  238.  
  239. void keresekListazasa(){
  240.     int keresekSzama = 0;
  241.     if( access("db", F_OK ) == -1 ) {
  242.     printf("nem letezik a fajl, eloszor adjon hozza kerest!\n");
  243.     printf("\nfolytatashoz nyomjon entert\n");
  244.     int c;
  245.     c = getchar();
  246.     getchar();
  247.     return;
  248.     } else {
  249.     FILE *file=fopen("db","r");
  250.     struct s_keres keres;
  251.     char line[500];
  252.     while(fgets(line, sizeof(line), file)) {
  253.         sscanf (line, "%s %s %s %s %i %i\n", keres.nev, keres.varos,
  254.         keres.cim, keres.ajandek, &keres.datum, &keres.szallitva);
  255.         if (0 == keres.szallitva)
  256.         {
  257.             char buff[100];
  258.             time_t recdate = keres.datum;
  259.             strftime (buff, 100, "%Y-%m-%d %H:%M:%S", localtime(&recdate));
  260.  
  261.              printf  ("%s %s %s %s  %s %i\n", keres.nev, keres.varos,
  262.             keres.cim, keres.ajandek, buff, keres.szallitva);
  263.             keresekSzama = keresekSzama + 1;
  264.         }
  265.     }
  266.     printf("Keresek szama osszesen: %i\n", keresekSzama);
  267.     fclose(file);
  268.  
  269.     printf("\nfolytatashoz nyomjon entert\n");
  270.     int c;
  271.  
  272.     c = getchar();
  273.     getchar();
  274.     }
  275. }
  276.  
  277. void bejegyez(char str[30]) {
  278.     if( access("db", F_OK ) == -1 ) {
  279.     printf("nem letezik a fajl, eloszor adjon hozza kerest!\n");
  280.     printf("\nfolytatashoz nyomjon entert\n");
  281.     int c;
  282.     c = getchar();
  283.     getchar();
  284.     return;
  285.     } else {
  286.  
  287.     FILE *file=fopen("db","r");
  288.     FILE *tempfile=fopen("temp_db","w");
  289.  
  290.     struct s_keres keres;
  291.     char line[500];
  292.  
  293.     while(fgets(line, 500, file) != NULL) {
  294.         sscanf(line, "%s %s %s %s %i %i\n", keres.nev, keres.varos,
  295.         keres.cim, keres.ajandek, &keres.datum, &keres.szallitva);
  296.        
  297.     if (!((strcmp(str,"baba")==0 || strcmp(str,"auto")==0 || strcmp(str,"labda")==0
  298.            ||strcmp(str,"kirako")==0 || strcmp(str,"szinezo")==0 || strcmp(str,"konyv")==0)))
  299.            {
  300.                 if (0 == strcmp(keres.varos, str)) {
  301.                     keres.szallitva = 1;
  302.                 }  
  303.            } else
  304.            {
  305.                 if (0 == strcmp(keres.ajandek, str)) {
  306.                     keres.szallitva = 1;
  307.                 }
  308.            }
  309.        
  310.    
  311.     fprintf(tempfile, "%s %s %s %s %i %i\n", keres.nev, keres.varos,  keres.cim, keres.ajandek, keres.datum, keres.szallitva);
  312.     }
  313.     fclose(file);
  314.     fflush(tempfile);
  315.     fclose(tempfile);
  316.     rename("temp_db", "db");
  317.     }
  318. }
  319.  
  320. void varosbaSzallit() {
  321.     int pid = 0;
  322.     char varos[30];
  323.     int pfd[2];
  324.     pipe(pfd);
  325.      int uzenetsor, status;
  326.      key_t kulcs = 1298; //ftok("elsoKulcs",1);
  327.    
  328.     varosokListazasa();
  329.      
  330.      uzenetsor = msgget( kulcs, 0600 | IPC_CREAT );
  331.      if ( uzenetsor < 0 ) {
  332.           perror("msgget");
  333.         //  return 1;
  334.      }
  335.    
  336.     pid = fork();
  337.    
  338.     if (pid == 0)  //gyerek
  339.     {
  340.         int count = 0;
  341.         close(pfd[1]);
  342.         while (read(pfd[0], varos, 1) == 1) //read from 0, write to 1
  343.         {
  344.         if (ioctl(pfd[0], FIONREAD, &count) != -1)
  345.             {
  346.                 if (read(pfd[0], varos + 1, count) == count)
  347.                     fprintf(stdout,"Child: received \"%s\"\n", varos); // + 1);
  348.                     close(pfd[0]);
  349.        
  350.                
  351.             }
  352.             else
  353.             {   // could not read in-size
  354.                 perror("Failed to read input size.");
  355.             }
  356.            
  357.         }
  358.        
  359.         if (1 == varosraSzur(varos))
  360.         {
  361.             printf("gyerek mondja szallitva\n");
  362.             kuld( uzenetsor, "szallitva" );
  363.         } else {
  364.             printf("gyerek mondja hiba\n");
  365.             kuld( uzenetsor, "hiba" );
  366.         }
  367.        
  368.         //waitpid(getppid());
  369.        
  370.         if ( msgctl( uzenetsor, IPC_RMID, NULL ) < 0 ) {
  371.                perror("msgctl");
  372.         } else {
  373.             printf("uzenetsor torolve\n");
  374.         }
  375.         printf("gyerek vegzett\n");
  376.         kill(getpid(), SIGUSR1 );
  377.        
  378.     }
  379.     else //szulo
  380.     {
  381.         close(pfd[0]);
  382.         printf("Melyik varosba szallitsunk?\n");
  383.         scanf("%s", varos);
  384.         write(pfd[1], varos, strlen(varos)+2);
  385.        
  386.    
  387.         if (0 != fogad(uzenetsor))
  388.         {
  389.             bejegyez(varos);
  390.             printf("bejegyezve");
  391.         } else
  392.         {
  393.             printf("nincs ilyen varos vagy ide mar szallitottunk\n");
  394.         }
  395.         printf("szulo vegzett\n");
  396.         //kill(getpid());
  397.     }
  398. }
  399.  
  400. varosokListazasa() {
  401.     int keresekSzama = 0;
  402.     int osszKeresekSzama = 0;
  403.    if ( access("db", F_OK ) == -1 ) {
  404.         printf("nem letezik a fajl, eloszor adjon hozza kerest!\n");
  405.         printf("\nfolytatashoz nyomjon entert\n");
  406.         int c;
  407.         c = getchar();
  408.         getchar();
  409.         return;
  410.     } else {
  411.         FILE *f=fopen("db","r");
  412.         struct s_keres keres;
  413.         char line[500];
  414.         //char varos[30];
  415.         char varosok[10][30];
  416.         int varosSzam = 1;
  417.        
  418.         while (fgets(line, sizeof(line), f)) {
  419.             sscanf (line, "%s %s %s %s %i %i\n", keres.nev,
  420.             keres.varos, keres.cim, keres.ajandek, &keres.datum, &keres.szallitva);
  421.             char buff[100];
  422.             time_t recdate = keres.datum;
  423.             strftime (buff, 100, "%Y-%m-%d %H:%M:%S", localtime(&recdate));
  424.             if (keres.szallitva == 0) {
  425.                 keresekSzama = keresekSzama + 1;
  426.                 //printf  ("%s\n",  keres.varos);
  427.                 int j = 1;
  428.                 int voltIlyen = 0;
  429.                 while (j < varosSzam) {
  430.                 //printf("keres.varos %s es varosok[%i] %s\n", keres.varos, varosSzam-1, &varosok[varosSzam-1]);
  431.                     if( 0 == strcmp(keres.varos, varosok[j]))
  432.                     {
  433.                         voltIlyen = 1;
  434.                         break;
  435.                     } else {
  436.                         j = j+1;
  437.                     }
  438.                 }
  439.                 if (voltIlyen == 0) {
  440.                     strcpy(varosok[varosSzam], keres.varos);
  441.                     //printf("uj hozzadva, varos neve: %s sorszama: %i \n", varosok[varosSzam], varosSzam);
  442.                     printf("%s\n",varosok[varosSzam]);
  443.                     varosSzam = varosSzam +1;
  444.                 }
  445.            
  446.             osszKeresekSzama = osszKeresekSzama + 1;
  447.             //if (osszKeresekSzama == 0)
  448.         }
  449.         }
  450.          fclose(f);
  451.     }
  452. }
  453.  
  454. ajandekokListazasa() {
  455.     int keresekSzama = 0;
  456.     int osszKeresekSzama = 0;
  457.    if ( access("db", F_OK ) == -1 ) {
  458.         printf("nem letezik a fajl, eloszor adjon hozza kerest!\n");
  459.         printf("\nfolytatashoz nyomjon entert\n");
  460.         int c;
  461.         c = getchar();
  462.         getchar();
  463.         return;
  464.     } else {
  465.         FILE *f=fopen("db","r");
  466.         struct s_keres keres;
  467.         char line[500];
  468.         //char varos[30];
  469.         char ajandekok[10][30];
  470.         int ajandekSzam = 1;
  471.        
  472.         while (fgets(line, sizeof(line), f)) {
  473.             sscanf (line, "%s %s %s %s %i %i\n", keres.nev,
  474.             keres.varos, keres.cim, keres.ajandek, &keres.datum, &keres.szallitva);
  475.             char buff[100];
  476.             time_t recdate = keres.datum;
  477.             strftime (buff, 100, "%Y-%m-%d %H:%M:%S", localtime(&recdate));
  478.  
  479.                 keresekSzama = keresekSzama + 1;
  480.                 //printf  ("%s\n",  keres.varos);
  481.                 int j = 1;
  482.                 int voltIlyen = 0;
  483.                 while (j < ajandekSzam) {
  484.                 //printf("keres.varos %s es varosok[%i] %s\n", keres.varos, varosSzam-1, &varosok[varosSzam-1]);
  485.                     if( 0 == strcmp(keres.ajandek, ajandekok[j]))
  486.                     {
  487.                         voltIlyen = 1;
  488.                         break;
  489.                     } else {
  490.                         j = j+1;
  491.                     }
  492.                 }
  493.                 if (voltIlyen == 0) {
  494.                     strcpy(ajandekok[ajandekSzam], keres.ajandek);
  495.                     //printf("uj hozzadva, varos neve: %s sorszama: %i \n", varosok[varosSzam], varosSzam);
  496.                     printf("%s\n",ajandekok[ajandekSzam]);
  497.                     ajandekSzam = ajandekSzam +1;
  498.                 }
  499.            
  500.             osszKeresekSzama = osszKeresekSzama + 1;
  501.         }
  502.          fclose(f);
  503.     }
  504. }
  505.  
  506. void ajandekotSzallit() {
  507.     int pid = 0;
  508.     char ajandek[30];
  509.     int pfd[2];
  510.     pipe(pfd);
  511.      int uzenetsor, status;
  512.      key_t kulcs = 1297; //ftok("kulcs",1);
  513.      
  514.     ajandekokListazasa();
  515.    
  516.       uzenetsor = msgget( kulcs, 0600 | IPC_CREAT );
  517.      if ( uzenetsor < 0 ) {
  518.           perror("msgget");
  519.         //  return 1;
  520.      }
  521.    
  522.     pid = fork();
  523.    
  524.     if (pid == 0)  //gyerek
  525.     {
  526.         int count = 0;
  527.         close(pfd[1]);
  528.         while (read(pfd[0], ajandek, 1) == 1) //read from 0, write to 1
  529.         {
  530.         if (ioctl(pfd[0], FIONREAD, &count) != -1)
  531.             {
  532.               //  fprintf(stdout,"Child: count = %d\n",count);
  533.      
  534.            
  535.                
  536.                 if (read(pfd[0], ajandek + 1, count) == count)
  537.                     fprintf(stdout,"Child: received \"%s\"\n", ajandek); // + 1);
  538.                     close(pfd[0]);
  539.        
  540.             //printf("Megy vissza a message: %i \n", name[0]);
  541.                
  542.             }
  543.             else
  544.             {   // could not read in-size
  545.                 perror("Failed to read input size.");
  546.             }
  547.         }
  548.         if (1 == ajandekraSzur(ajandek))  // ajandekra szur fugvennyel gond lesz
  549.         {
  550.             printf("gyerek mondja szallitva\n");
  551.             kuld( uzenetsor, "szallitva" );
  552.         } else {
  553.             printf("gyerek mondja hiba\n");
  554.             kuld( uzenetsor, "hiba" );
  555.         }
  556.         // status = ;
  557.         //wait();
  558.           if ( msgctl( uzenetsor, IPC_RMID, NULL ) < 0 )
  559.                perror("msgctl");
  560.            
  561.    
  562.     }
  563.     else //szulo
  564.     {
  565.         close(pfd[0]);
  566.         printf("Melyik ajandekot szallitsuk?\n");
  567.         scanf("%s", ajandek);
  568.         write(pfd[1], ajandek, strlen(ajandek)+2);
  569.        
  570.        
  571.         if (0 != fogad(uzenetsor))
  572.         {
  573.         //printf("beirhatjuk hogy egy a szallitva ezeknel..\n");
  574.         bejegyez(ajandek);
  575.         printf("bejegyezve");
  576.         } else
  577.         {
  578.             printf("nincs ilyen ajandek vagy ilyet mar szallitottunk\n");
  579.     }
  580.     }
  581. }
  582.  
  583. // sending a message
  584. int kuld( int uzenetsor, char varos[30]) {
  585. //A manó a szállítás elvégzéséről üzenetsorban tájékoztatja télaput,aki bejegyzi, hogy melyik városba vagy melyik lett az ajándék kiszállítva
  586. //printf("probaMitIr %s\n", varos);
  587.      struct uzenet uz;// = { 5, varos };
  588.      uz.mtype = 5;
  589.      strcpy(uz.mtext, varos);
  590.      int status;
  591.      
  592.      status = msgsnd( uzenetsor, &uz, strlen ( uz.mtext ) + 1 , 0 );
  593.     // a 3. param ilyen is lehet: sizeof(uz.mtext)
  594.         // a 4. parameter gyakran IPC_NOWAIT, ez a 0-val azonos
  595.      if ( status < 0 )
  596.           perror("msgsnd");
  597.      return 0;
  598. }
  599.      
  600. // receiving a message.
  601. int fogad( int uzenetsor ) {
  602. //A manó a szállítás elvégzéséről üzenetsorban tájékoztatja télaput,aki bejegyzi, hogy melyik városba vagy melyik lett az ajándék kiszállítva
  603.      struct uzenet uz;
  604.      int status;
  605.      // az utolso parameter(0) az uzenet azonositoszama
  606.     // ha az 0, akkor a sor elso uzenetet vesszuk ki
  607.     // ha >0 (5), akkor az 5-os uzenetekbol a kovetkezot
  608.     // vesszuk ki a sorbol
  609.      status = msgrcv(uzenetsor, &uz, 1024, 5, 0 );
  610.      
  611.      if ( status < 0 )
  612.           perror("msgsnd");
  613.      else
  614.      {
  615.          // printf( "A kapott uzenet kodja: %ld, szovege:  %s\n", uz.mtype, uz.mtext );
  616.           printf("A kapott uzenet: %s\n", uz.mtext);
  617.           //
  618.      }
  619.      if (0 == strcmp(uz.mtext,"szallitva"))
  620.      {
  621.         return 1;
  622.     } else return 0;
  623. }
  624.  
  625. int main() {
  626.  
  627.     int menuId;
  628.    
  629.     while(1) {
  630.     menuMegjelenitese();
  631.     scanf("%d", &menuId);
  632.  
  633.     switch (menuId) {
  634.     case 1:
  635.         ujKeres();
  636.         break;
  637.     case 2:
  638.         keresekListazasa();
  639.         break;
  640.     case 3:
  641.         varosraSzur("beolvas");
  642.         break;
  643.     case 4:
  644.         ajandekraSzur("beolvas");
  645.         break;
  646.     case 5:
  647.         varosbaSzallit();
  648.         break;
  649.     case 6:
  650.         ajandekotSzallit();
  651.         break;
  652.     default:
  653.         printf("Nincs ilyen menu!\n");
  654.         break;
  655.     }
  656.     }
  657. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement