Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include<stdio.h>
- #include<stdlib.h>
- #include<ctype.h>
- //1-mamifer, 2-insectă, 3-pește, 4-pasăre);
- typedef struct
- {
- int flag;
- int ani;
- union{
- struct{
- int gestatie;
- int pui;
- }mamifer;
- struct
- {
- int picioare;
- int zboara;//1-da, 0-nu
- int periculoasa;//1-da, 0-nu
- }insecta;
- struct
- {
- int apa;//1-sarata,0-dulce
- int adancime;
- int viteza;
- }peste;
- struct
- {
- int anvergura;
- int altitudinea;
- int viteza;
- }pasare;
- }tip;
- }vietuitoare;
- int main(void)
- {
- int nr=0;
- int nr_anim;
- printf("Dati nr de animale:");
- scanf("%d",&nr_anim);putchar('\n');
- do{
- vietuitoare *a;
- a=(vietuitoare *)malloc(sizeof(vietuitoare *));
- if (!a) {
- printf("Eroare alocare memorie.\n");
- exit(EXIT_FAILURE);
- }
- int flag; putchar('\n');
- printf("Alegeti: 1-mamifer, 2-insectă, 3-pește, 4-pasăre\n");
- if(scanf("%d",&flag)==1)
- {
- if(flag==1)
- {
- printf("Introduceti perioada de gestatie: ");
- scanf("%d",&a->tip.mamifer.gestatie);
- putchar('\n');
- printf("Introduceti numărul mediu de pui pe care îi naște: ");
- scanf("%d",&a->tip.mamifer.pui);
- putchar('\n');
- //afisarea:
- printf("REZULTATE: \n");
- printf("Perioada de gestatie: %d",a->tip.mamifer.gestatie);putchar('\n');
- printf("Nr de pui: %d",a->tip.mamifer.pui);putchar('\n');
- }
- if(flag==2)
- {
- printf("Introduceti numărul de picioare: ");
- scanf("%d",&a->tip.insecta.picioare);
- putchar('\n');
- printf("Poate să zboare?1-da/0-nu ");
- scanf("%d",&a->tip.insecta.zboara);
- putchar('\n');
- printf("Este periculoasă sau nu pentru om;?1-da/0-nu ");
- scanf("%d",&a->tip.insecta.periculoasa);
- putchar('\n');
- //afisarea:
- printf("REZULTATE: \n");
- printf("Nr de picioare: %d",a->tip.insecta.picioare);putchar('\n');
- printf("Poate să zboare?1-da/0-nu: %d",a->tip.insecta.zboara);putchar('\n');
- printf("Este periculoasă sau nu pentru om;?1-da/0-nu: %d",a->tip.insecta.periculoasa);putchar('\n');
- }
- if(flag==3)
- {
- printf("Introduceti tipul de apă: 1-sărată/0-dulce: ");
- scanf("%d",&a->tip.peste.apa);
- putchar('\n');
- printf("Adâncimea maximă la care se poate întâlni ");
- scanf("%d",&a->tip.peste.adancime);
- putchar('\n');
- printf("Viteza maximă de înot: ");
- scanf("%d",&a->tip.peste.viteza);
- putchar('\n');
- //afisarea:
- printf("REZULTATE: \n");
- printf("Tip apa(1-sarata,0-dulce): %d",a->tip.peste.apa);putchar('\n');
- printf("Adâncimea maximă: %d",a->tip.peste.adancime);putchar('\n');
- printf("Viteza maximă de inot: %d",a->tip.peste.viteza);putchar('\n');
- }
- if(flag==4)
- {
- printf("Introduceti anvergura aripilor: ");
- scanf("%d",&a->tip.pasare.anvergura);
- putchar('\n');
- printf("Altitudinea maximă de zbor: ");
- scanf("%d",&a->tip.pasare.altitudinea);
- putchar('\n');
- printf("Viteza maximă de zbor: ");
- scanf("%d",&a->tip.pasare.viteza);
- putchar('\n');
- //afisarea:
- printf("REZULTATE: \n");
- printf("anvergura aripilor:: %d",a->tip.pasare.anvergura);putchar('\n');
- printf("Altitudinea maximă: %d",a->tip.pasare.altitudinea);putchar('\n');
- printf("Viteza maximă de zbor: %d",a->tip.pasare.viteza);putchar('\n');
- }
- nr++;
- }
- }while(nr<nr_anim);
- //free(a);
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement