Advertisement
Guest User

Untitled

a guest
Dec 12th, 2018
63
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C 1.92 KB | None | 0 0
  1. #include <stdio.h>
  2. #include <conio.h>
  3. #include <string.h>
  4.  
  5.     typedef struct{
  6.         char nume[50], culoare[50], categorie[50];
  7.         int an, numar_clase, capacitate;
  8.     } vapoare;
  9.  
  10.     void adaugare(vapoare *v, int *nr){
  11.         char cat1[10],cat2[6];
  12.         strcpy(cat1,"croaziera");
  13.         strcpy(cat2,"marfa");
  14.         (*nr)++;
  15.         printf("Dati numele:");
  16.         gets((v + *nr)->nume);
  17.         printf("\nDati culoarea:");
  18.         gets((v + *nr)->culoare);
  19.         printf("\nDati anul fabricatiei:");
  20.         scanf("%d",(v + *nr)->an);
  21.         printf("\nDati categoria:");
  22.         gets((v + *nr)->categorie);
  23.         if(strcmp((v + *nr)->categorie,cat1)==0){
  24.             printf("\nDati numarul de clase:");
  25.             scanf("%d",&(v + *nr)->numar_clase);
  26.         }
  27.         else
  28.             if(strcmp((v + *nr)->categorie,cat2)==0){
  29.                 printf("Dati capacitatea:");
  30.                 scanf("%d",&(v + *nr)->capacitate);
  31.             }
  32.     }
  33.  
  34.     void afisare(vapoare *v, int nr){
  35.         char cat1[10],cat2[6];
  36.         printf("\n%s \t%s \t%d",(v + nr)->nume,(v + nr)->culoare, v[nr].an);
  37.         if(strcmp((v + nr)->categorie,cat1)==0){
  38.             printf("\nNumarul de clase este %d");
  39.         }
  40.         else
  41.             if(strcmp((v + nr)->categorie,cat2)==0){
  42.                 printf("\nCapacitatea este:");
  43.             }
  44.     }
  45.  
  46.     void afisare_capacitate(vapoare *v, int nr){
  47.         int c;
  48.         printf("Dati capacitatea dorita:");
  49.         scanf("%d",&c);
  50.         if((v + nr)->capacitate>=c){
  51.             printf("\n%s \t%s \t%d",(v + nr)->nume,(v + nr)->culoare, v[nr].an);
  52.         }
  53.     }
  54.  
  55.     int main(){
  56.         vapoare v[50]; int optiune,i,n=-1;
  57.         do{
  58.             printf("\t Selectati optiunea:\n\n\t1.Adaugare vapor nou\n\t2.Afisarea tuturor vapoarelor\n\t3.Sa se afiseze vapoarele cu capacitatea mai mare decat\n\t4.Cautare vapor dupa an fabricatie\n\t5.Iesire\n\nOptiune:");
  59.             scanf("%d",&optiune);
  60.  
  61.             if(optiune==1){
  62.                 adaugare(&v[0],&n);
  63.             }
  64.             if(optiune==2){
  65.                 for(i==0;i<=n;i++)
  66.                 afisare(v,n);
  67.             }
  68.             if(optiune==3){
  69.                 afisare_capacitate(v,n);
  70.             }
  71.             if(optiune==4){
  72.                 return 0;
  73.             }
  74.         }while(optiune!=0);
  75.  
  76.         getch();
  77.         return 0;
  78.     }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement