Proszę Was o pomoc. :( Muszę rozwiązać zadanie na ocenę. Program musi być wykonany w C. Nagrodzę punktami i ,,naj,, z poprawne rozwiązanie.

Napisz program, operujący na tablicy N=5 struktur "zwierzę" o polach: imię, gatunek, wiek, czy_szczepione. Program ma za zadanie wczytać dane do tablicy i wypisać dane wszystkich zwierząt oraz zwierząt zaszczepionych



Odpowiedź :

Datoix

Odpowiedź:

#include <stdio.h>

#include <string.h>

#define N 5

typedef struct

{

   char imie[20];

   char gatunek[20];

   int wiek;

   char czy_szczepione[13];

} Zwierze;

void wypisz_wszystkie(Zwierze zwierzeta[N])

{

   for (int i = 0; i < N; ++i)

   {

       printf("imie: %s, gatunek: %s, wiek: %d, czy_szczepione: %s\n",

           zwierzeta[i].imie, zwierzeta[i].gatunek, zwierzeta[i].wiek, zwierzeta[i].czy_szczepione

       );

   }

}

void wypisz_szczepione(Zwierze zwierzeta[N])

{

   for (int i = 0; i < N; ++i)

   {

       if (!strcmp(zwierzeta[i].czy_szczepione, "szczepione"))

       {

           printf("imie: %s, gatunek: %s, wiek: %d, czy_szczepione: %s\n",

               zwierzeta[i].imie, zwierzeta[i].gatunek, zwierzeta[i].wiek, zwierzeta[i].czy_szczepione

           );

       }

   }

}

int main(void)

{

   Zwierze zwierzeta[N];

   for (int i = 0; i < N; ++i)

   {

       printf("--------\nZwierze nr. %d\n", i + 1);

       

       printf("Imie: ");

       scanf("%s", zwierzeta[i].imie);

       

       printf("Gatunek: ");

       scanf("%s", zwierzeta[i].gatunek);

       printf("Wiek: ");

       scanf("%d", &zwierzeta[i].wiek);

       printf("Szczepione / nieszczepione: ");

       scanf("%s", zwierzeta[i].czy_szczepione);

       

       printf("\n");

   }

   

   // tu mozesz wywolac funkcje

   return 0;

}

Wyjaśnienie:

Wiem, że drugi raz, ale poprzednia odpowiedz była zła