Dat_etudiant

Description

cette code permet d'entrer des information sur un ensemble des etudiant
puis les trier selon la date de naisance de chaque etudiant...

Source / Exemple :


#include <stdio.h>
#include <conio.h>
typedef struct  {
		       int jour;
		       int mois;
		       int annee;
		    }date;
typedef struct  {
		char nom[20];
		char prenom[20];
		float moy;
		date d;
                }etudiant;

void saisie_date (date *d)
 {  
	printf ("donner le jour ");
	scanf	("%d",&d->jour);
	printf("donner le mois ");
	scanf("%d",&d->mois); 
	printf("donner l'annee ");
	scanf("%d",&d->annee);
 }
void affich(date d)
 {
   printf("	%d-%d-%d\n",d.jour,d.mois,d.annee);
 }
int compar(date d1,date d2)
 {
   int res;
   if(d1.annee>d2.annee)res=1;
	else if(d1.annee<d2.annee)res=2;
		else  if(d1.mois>d2.mois)res=1;
			else if(d1.mois<d2.mois)res=2;
				else if(d1.jour>d2.jour)res=1;
					else if(d1.jour<d2.jour)res=2;
						else res=0;
						
 return(res);
 }
 void saisie_etudiant(etudiant* e)
 {
 printf("\ndonner le nom de l'étudiant :\n");
 scanf("%s",&e->nom);
 printf("donner le prenom de l'étudiant :\n");
 scanf("%s",&e->prenom);
 printf("donner le moyenne de l'étudiant :\n");
 scanf("%f",&e->moy);
 saisie_date(&e->d);
}
void aff_etudiant(etudiant e)
{
printf("\n%10s	%10s	%4.2f	",e.nom,e.prenom,e.moy);
affich(e.d);
}
void saisie_classe(etudiant t[],int n)
{
int i;
etudiant e;
for(i=0;i<n;i++)
saisie_etudiant(&t[i]);
}
void aff_classe(etudiant t[],int n)
{
int i;
for(i=0;i<n;i++)
aff_etudiant(t[i]);
}
void tri_classe(etudiant t[],int n)
{
int i,r,test=1;
etudiant aux;
do {
	test=0;
	for(i=0;i<n;i++)
	{ r=compar(t[i].d,t[i+1].d);
		if(r==2)
			{ aux=t[i];
	 		 t[i]=t[i+1];
	  		t[i+1]=aux;
          		test++;
			}
        }

}
while(test!=0);
}
 void main()
 {
 int x;
 etudiant tab[50];
 printf("donner le nombre des étudiants de la classe:\n");
 scanf("%d",&x);
 saisie_classe(tab,x);
 clrscr();
tri_classe(tab,x);
aff_classe(tab,x);printf("\n YOUSSEF FOR EVER\n");
  getch();
 }

Codes Sources

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.