Salut Les Amis
j'ai trouvé un probleme dans mon programme de gestion d'eleves
plus exactement lors de l'affichage ou le programme m'affiche que le 1er nom de l'eleve1 les autre eleves ça m'affiche
que leur prenom age et moyenne generale
je vous laisse avec le code source qui compile sans aucun probleme
Code C/C++ :
#include <stdio.h>
#include <stdlib.h>
int NbrEleve;
struct Etudiant
{
char Nom[20];
char Prenom[20];
int Age;
float Note[4];
}Etd[120];
void Menu(void)
{
int i;
char *MENU_CHAMP[]={"1 : Lecture des elements","2 : Affichage des elements",
"3 : Ajout d'un element", "4 : Recherches des elements",
"5 : Modification des elements","6 : Suppression des elements",
"7 : Tri des element","Echap : Sortir" };
for(i=0;i<8;i++)
{
printf("%s\n",MENU_CHAMP[i]);
}
}
//Ma fonction de saisie
void Saisie(void)
{
int i,j;
printf("Saisir le nombre d'eleves ? : ");
scanf("%d",&NbrEleve);
system("cls");
for(i=0;i<NbrEleve;i++)
{
printf("Saisir le nom de l'eleve[%d] ? : ",i+1);
scanf("%s",Etd[i].Nom);
printf("Saisir le prenom de l'eleve[%d] ? : ",i+1);
scanf("%s",Etd[i].Prenom);
printf("Saisir l'age de l'eleve[%d] ? : ",i+1);
scanf("%d",&Etd[i].Age);
printf("Saisir la note 1 de l'eleve[%d] ? : ",i+1);
scanf("%f",&Etd[i].Note[0]);
printf("Saisir la note 2 de l'eleve[%d] ? : ",i+1);
scanf("%f",&Etd[i].Note[1]);
printf("Saisir la note 3 de l'eleve[%d] ? : ",i+1);
scanf("%f",&Etd[i].Note[2]);
printf("Saisir la note 4 de l'eleve[%d] ? : ",i+1);
scanf("%f",&Etd[i].Note[3]);
system("cls");
}
//Calcul de moyenne pour chaque eleve
for(i=0;i<NbrEleve;i++)
{
Etd[i].Note[4]=0;
for(j=0;j<4;j++)
{
Etd[i].Note[4]+=Etd[i].Note[j];
}
Etd[i].Note[4]=Etd[i].Note[4]/4;
}
printf("Saisie Complete");
getch();
}
//Ma fonction d'affichage
void Affichage(void)
{
int i;
for(i=0;i<NbrEleve;i++)
{
printf("%s\t",Etd[i].Nom);
printf("%s\t",Etd[i].Prenom);
printf("%d\t",Etd[i].Age);
printf("%.2f\t\n",Etd[i].Note[4]);
}
getch();
}
int main()
{
int choix;
do
{
system("cls");
Menu();
printf("\nSaisir Votre Choix ? : ");
scanf("%d",&choix);
switch (choix)
{
case 1:system("cls");Saisie();break;
case 2:system("cls");Affichage();break;
case 3:system("cls");break;
case 4:system("cls");break;
case 5:system("cls");break;
case 6:system("cls");break;
case 7:system("cls");break;
case 27:system("cls");break;
default :system("cls");printf("Desole ce choix ne figure pas dans le menu!!!\n\a\a\a");break;
}
}while(choix!=27);
return 0;
}
dans la fonction d'affichage si je permute la ligne d'affichage des noms et prenoms le meme probleme m'arrive avec les prenom et les nom s'affiche tous correctement
pour bien me comprendre veilleuz SVP compiler et faire l'example avec 2 ou 3 eleves et merci infiniment