Tri du tableau eleve

trifayza -  
trifayza Messages postés 1 Statut Membre -
Bonjour,tout le monde j'espère que quelqu'un peut m'aider a trouver une solution exacte sur le tri d'un tableau
alors j'ai élève caractérise par son nom,prénom,numéro_inscription,date de naissance et sa note d'examen
je voudrais trie du tous le tableau des élèves(nom,prénom,numéro_inscription,date de naissance et note )par ordre décroissant des notes pas seulement les notes car il est simple de trie seulement par note
et merci à tous
voici le code en langage c:
#include <stdio.h>
#include <stdlib.h>

struct eleve
{
char nom[10];
char prenom[10];
int N_insc;
int date;
int note;
float PN;
};
void main(){
float stn;
float MOY;
int NE,i,j,x;
printf("donner le nombre des eleves \n");
scanf("%d",&NE);
struct eleve EL[NE];
for(i=0;i<NE;i++)
{ printf("donner le nom etudiant N° %d \n",i+1);
scanf("%s",EL[i].nom);
printf("donner le prenom etudiant N° %d \n",i+1);
scanf("%s",EL[i].prenom);
printf("donner le numero_inscription etudiant N° %d \n",i+1);
scanf("%d",&EL[i]. N_insc);
printf("donner la date etudiant N° %d \n",i+1);
scanf("%d",&EL[i]. date);
printf("donner la note d exemen de etudiant N° %d \n",i+1);
scanf("%d",&EL[i].note);}

stn=0;
for(i=0;i<NE;i++){
stn=stn+EL[i].note;}
MOY=stn/NE;
for(i=0;i<NE;i++)
{
EL[i].PN=(EL[i].note/stn)*100;
}
printf("\n**********************************\n");
for(i=0;i<NE;i++)
{
for(j=i+1;j<NE;j++){
if(EL[i].note<EL[j].note)
{
x=EL[i].note;
EL[i].note=EL[j].note;
EL[j].note=x;
}
}
}for(i=0;i<NE;i++)
{
printf("information de l eleve sont N[%d]\n",i+1);
printf("%s %s son numero_inscription %d, date_naissance %d la note_examen%d,le pourcentage %f \n",EL[i].nom,EL[i].prenom,EL[i].N_insc,EL[i].date,EL[i].note,EL[i].PN);
}
printf("le moyenne de classe est %f\n",MOY);
printf("la somme total du classe est %f\n",stn);
printf("\n**********************************\n");
}
A voir également:

1 réponse

trifayza Messages postés 1 Statut Membre
 
ok malgré que quelqu'un ne m'aider mais je trouve la solution
le solution est:
#include <stdio.h>
#include <stdlib.h>

struct eleve
{
char nom[10];
char prenom[10];
int N_insc;
int date;
int note;
float PN;
};
void main(){
float stn;
float MOY;
int NE,i,j,x;
printf("donner le nombre des eleves \n");
scanf("%d",&NE);
struct eleve EL[NE];
for(i=0;i<NE;i++)
{ printf("donner le nom etudiant N° %d \n",i+1);
scanf("%s",EL[i].nom);
printf("donner le prenom etudiant N° %d \n",i+1);
scanf("%s",EL[i].prenom);
printf("donner le numero_inscription etudiant N° %d \n",i+1);
scanf("%d",&EL[i]. N_insc);
printf("donner la date etudiant N° %d \n",i+1);
scanf("%d",&EL[i]. date);
printf("donner la note d exemen de etudiant N° %d \n",i+1);
scanf("%d",&EL[i].note);}

stn=0;
for(i=0;i<NE;i++){
stn=stn+EL[i].note;}
MOY=stn/NE;
for(i=0;i<NE;i++)
{
EL[i].PN=(EL[i].note/stn)*100;
}
printf("\n**********************************\n");
for(i=0;i<NE;i++)
{
for(j=i+1;j<NE;j++){
if(EL[i].note<EL[j].note)
{
x=EL[i];
EL[i]=EL[j];
EL[j]=x;
}
}
}for(i=0;i<NE;i++)
{
printf("information de l eleve sont N[%d]\n",i+1);
printf("%s %s son numero_inscription %d, date_naissance %d la note_examen%d,le pourcentage %f \n",EL[i].nom,EL[i].prenom,EL[i].N_insc,EL[i].date,EL[i].note,EL[i].PN);
}
printf("le moyenne de classe est %f\n",MOY);
printf("la somme total du classe est %f\n",stn);
printf("\n**********************************\n");
}
il est marche 100%
0