Calcul de moyenne de classe plus classement

Fermé
coulio - 16 juin 2009 à 00:32
 The_Fakir - 20 janv. 2011 à 15:11
Bonjour,
J'aimerais que quelqu'un m'aide à écrire un programme en langage C ki me permette de calculer mes moyennes des étudiants d'une classe pour 3 et la moyeene général de la classe ainsi que leur classement.

J'ai un code mais il ne marche pas.

# include<stdio.h>
main()
{
int i,echange;
int rep;
float moy[4][3], inter;
void calcul();
do
{
calcul();
printf("n\n\Voulez vous continuez(0/1)?");
scanf("%d",&rep);
}
while(rep==1);

}

/* saisie des moyennes par matière*/

void traitement()
{
int i,j;
float som=0, som_el[3], som_mat[4], moy_el[3], moy_mat[4], moy[3][4];
float moyn_gene;
for(i=0;i<3;i++)
for(j=0;j<4;j++)

/* Saisie des moyennes des élèves*/
{
printf("\nEntrez la moyenne N[%d%d]:",i,j);
scanf("%f",&moy[i][j]);
while(moy[i][j]<0 ||moy[i][j]>20)/*test sur la moyenne saisie: tant que la moyenne est >0 et < 20*/
{

if(moy[i][j]<0)/* si la moyenne i de l'élève j est inférieure à 0*/
printf("n\La moyenne saisie est négative");
else
/* si la moyenne i de l'élève j est supérieure à 20*/
printf("\La moyenne saisie est trop grande. Elle doit être inférieure à 20");
printf("\nEntrez la moyenne N[%d%d]:",i,j);
scanf("%f",&moy[i][j]);
}

som+=moy[i][j];/* on incrémente la somme des moyennes*/
}
moyn_gene=som/3;/* on calcul la moyenne générale de la classe par matière (3 matières)*/
for(i=0;i<3;i++)
for(j=0;j<4;j++)
{
printf("\nLa moyenne N[%d%d] est:%d%f",i,j,moy[i][j]);

}
printf("\n\n\n moyenne par élève\n");
for(i=0;i<3;i++)
som_el[i]=0;
for(i=0;i<3;i++)
{

for(j=0;j<4;j++)
som_el[i]+moy[i][j];
moy_el[i]=som_el[i]/4;

printf("La moyenne de l'élève[%d] est:%d%f\n",i,moy_el[i]);
}
printf("n\n\n moyenne par matière\n");
for(j=3;j<3;j++)
som_mat[j]=0;
for(j=0;j<3;j++)
}
for(i=0;i<3;i++)
{
som_mat[j]+=moy[i][j];
printf("\n\nLa moyenne N%d saisie pour la matière[%d] est:%d%f\n,i,j,moy[i][j]);
}
moy_mat[j]=som_mat[j]/3;
printf("\n\nLa moyenne de la classe pour la matière[%d] est:%d%f\n\n\n",j,moy_mat[i]);
{
printf("\n\nLa moyenne générale de la classe est:%d%f\n",j,moyn_gene);3

}
}
/* classement*/
do
{echange=0;
for j=0;j<3;i++)/* on a 4 élèves. On incrémente jusqu'au 3è élève*/
if(moyn_gene[j]>moyn_gene[j+1])
{
echange=1;
inter=moyn_gene[j];
moyn_gene[j]=moyn_gene[j+1];
moyn_gene[j+1]=inter;
}
while(echange==1);
printf("\n après le clasement on a");
printf("\n Le premier est :%f/f", moyn_gene[0]);
for(j=1;j<4;j++)
printf("\n Le %d ième est :%f/f", moyn_gene[j]);
printf("\n\n Voulez-vous continuer(0/1)?");
scanf("%d",&rep);
}
while(rep==1);

}

3 réponses

cireme83 Messages postés 17 Date d'inscription mercredi 10 juin 2009 Statut Membre Dernière intervention 17 janvier 2011 3
16 juin 2009 à 08:39
Ou est la fonction calcul() dans tout cela????
3