jeudi 21 janvier 2016

Exercice corrigé Langage C : (Structures)

Enoncé :

Soit la structure suivante : 

                                        struct etudiant {

                                                  int num;
                                                  char nom[30];
                                                  char filiere[30];
                                      };


  1. Ecrire une fonction Remplir qui remplie la structure .
  2. Ecrire une fonction Afficher les données selon une filière donnée par l'utilisateur 

 Solution : 

struct etudiant
{
    int num;
    char nom[30];
    char filiere[30];
};
typedef struct etudiant CD;
CD* remplir(CD T[],int n)
{
    int i;
    for(i=0;i<n;i++)
    {
        printf("Donner le num \n");
        scanf("%d",&T[i].num);
        getchar();
        printf("Donner le nom \n");
        gets(T[i].nom);
        printf("Donner la filiere \n");
        gets(T[i].filiere);
    }
return T;
}
void afficherparfili(CD T[],int n)
{
    int i;
    char fili[30];
    printf("Donner la filiere a chercher \n");
    gets(fili);
    for(i=0;i<n;i++)
    {
        if(strcmp(T[i].filiere,fili)==0)
        {
            printf("Le num : %d \t le nom : %s\n",T[i].num,T[i].nom);
        }
    }
}
int main()
{

       CD *T; int n;

     do{
        printf("Donner le nombre d'etudiant \n");
        scanf("%d",&n);
    }while(n<=0 && n>100);

    T=(CD*)malloc(n*sizeof(CD));

    T=remplir(T,n);
    afficherparfili(T,n);

return 0;
}


Aucun commentaire:

Enregistrer un commentaire