Jarrive pas a trouver l'erreur
ADI
-
blurk Messages postés 487 Statut Membre -
blurk Messages postés 487 Statut Membre -
bonjour g doi fai un programme premettant de rentrer des note a plusieur eleve (le meme nbr de N pour chaque)
pour cela g utiliser 2 tab et le prgramme doi mafficher la moyenne de chaque eleve a la fin
#include<stdio.h>
#define N_max 150
#define E_max 150
int main(void)
{
/*programme calcul de moyenne de chaque éléve*/
int i,j,n,e;
float somme,moy,tab[N_max],TAB[E_max],tab_moy[E_max];
//la je demande combien de note y a t il par eleve ainsi que le nbr d'eleve
printf("combien d'eleves voulez vous?\n");
scanf("%d",&e);
fflush(stdin);
printf("combien de notes voulez vous?\n");
scanf("%d",&n);
fflush(stdin);
somme=0;
//ici j'utilise 2 boucles la deuxiemme va me permettree de rentrer les note de l'eleve e et la premiere changer d'eleve
for (i=0;i<e;i++);{
for (j=0;j<n;j++);{
printf("quelle est la note?\n");
scanf("%f",&tab[j]);
fflush(stdin);
somme=somme+tab[j];
}
tab_moy[i]=somme/n;}
//normalement la g fini de remplir tt les tableaux et g demande simplement quil me restitue les moyenne de chaque eleve
for (i=0;i<e;i++);{
printf("l'éléve e%d à %f de moyenne \n",i,tab_moy[i]);
}
getchar();
}
le prog tourne n'importe comment il me demande pas de passer a l'eleve suivant g comprend pas
merci d'avance si vous trouver le probleme
by
ADI
pour cela g utiliser 2 tab et le prgramme doi mafficher la moyenne de chaque eleve a la fin
#include<stdio.h>
#define N_max 150
#define E_max 150
int main(void)
{
/*programme calcul de moyenne de chaque éléve*/
int i,j,n,e;
float somme,moy,tab[N_max],TAB[E_max],tab_moy[E_max];
//la je demande combien de note y a t il par eleve ainsi que le nbr d'eleve
printf("combien d'eleves voulez vous?\n");
scanf("%d",&e);
fflush(stdin);
printf("combien de notes voulez vous?\n");
scanf("%d",&n);
fflush(stdin);
somme=0;
//ici j'utilise 2 boucles la deuxiemme va me permettree de rentrer les note de l'eleve e et la premiere changer d'eleve
for (i=0;i<e;i++);{
for (j=0;j<n;j++);{
printf("quelle est la note?\n");
scanf("%f",&tab[j]);
fflush(stdin);
somme=somme+tab[j];
}
tab_moy[i]=somme/n;}
//normalement la g fini de remplir tt les tableaux et g demande simplement quil me restitue les moyenne de chaque eleve
for (i=0;i<e;i++);{
printf("l'éléve e%d à %f de moyenne \n",i,tab_moy[i]);
}
getchar();
}
le prog tourne n'importe comment il me demande pas de passer a l'eleve suivant g comprend pas
merci d'avance si vous trouver le probleme
by
ADI
A voir également:
- Jarrive pas a trouver l'erreur
- Trouver adresse mac - Guide
- Ou trouver l'adresse ip - Guide
- Comment trouver le mot de passe wifi sur son téléphone - Guide
- Ou trouver la corbeille - Guide
- Trouver mon adresse exacte - Guide
1 réponse
salut
- pas d'indentation --> ilisible
- les 2 boucles imbriquées traitent la même variable
donc c'est comme si il n'y avait qu'une seule boucle (mais laquelle ?)
- flush(stdin) ici, bof pour quoi faire ?
-aucun bridage lors de la saisie, N_max et E_max peuvent être dépassés
par l'utilisateur ignorant des limites de capacité du programme
--> segmentation fault (avec un peu de chance)
franchement rendre le code plus lisible, ici c'est 80% du boulot
cordialement
¤
- pas d'indentation --> ilisible
- les 2 boucles imbriquées traitent la même variable
donc c'est comme si il n'y avait qu'une seule boucle (mais laquelle ?)
- flush(stdin) ici, bof pour quoi faire ?
-aucun bridage lors de la saisie, N_max et E_max peuvent être dépassés
par l'utilisateur ignorant des limites de capacité du programme
--> segmentation fault (avec un peu de chance)
franchement rendre le code plus lisible, ici c'est 80% du boulot
cordialement
¤