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