Ca rassure toujours d'entendre que vosu aussi vous etes passé par cet etat de nulité profonde :biggrin:
Bon bah pour la peine j'ai tout repris a zero et en essayant de suivre vos conseil...
Il y a du mieux!!!
mais toujours des problemes... :tickedoff:
Je vous livre mon programme:
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
//Structure d'un eleve
typedef struct el
{
char nom [15];
char prenom [15];
char adresse[50];
float note1;
float note2;
float note3;
} ELEVE;
ELEVE classe[15];
//Menu
char afficherMenu() {
char choix;
printf ("\n\n MENU \n"
;
printf (" **** \n\n"
;
printf (" 1 - Entrer un eleve \n"
;
printf (" 2 - Afficher la liste des eleves \n"
;
printf (" 3 - Afficher la moyenne annuel d'un eleve \n"
;
printf (" 4 - Afficher les notes d'un eleve \n"
;
printf (" 5 - Quitter \n"
;
fflush(stdin);
}
//1e choix : Saisir les données d'un éleve
int i=1;
int nbeleves=0;
saisireleve() {
printf("Eleve n:%d \n", i);
printf("Entrez le nom de l'eleve : \n"
;
scanf("%s", &classe[ i ].nom);
printf("Entrez le prenom de l'eleve : \n"
;
scanf("%s", &classe[ i ].prenom);
printf("Entrez l'adresse de l'eleve : \n"
;
scanf("%c", &classe[ i ].adresse);
printf("Entrez la note du 1e trimestre : \n"
;
scanf("%f", &classe[ i ].note1);
printf("Entrez la note du 2e trimestre : \n"
;
scanf("%f", &classe[ i ].note2);
printf("Entrez la note du 3e trimestre : \n"
;
scanf("%f", &classe[ i ].note3);
i++;
nbeleves=i;
}
//Afficher eleves
affichereleves() { i=1;
while (i < nbeleves) {
printf("\n\n\nles eleves de la classes sont:\n\n"
;
printf("Eleve n: %d\n", i );
printf("%s %s\n", classe[ i ].nom, classe[ i ].prenom);
printf("%c\n", classe[ i ].adresse);
i++;
}
}
int main(int argc, char *argv[])
{
char choix;
while(1){
afficherMenu();
scanf("%c",&choix);
if(choix == '1') {
saisireleve();
}
if(choix == '2') {
affichereleves();
}
if(choix == '5') return 0;
}
system("PAUSE"
;
return 0;
}
Donc, quand j'ai fini de rentrer un eleve, je retourne bien au menu.
Quand je fais afficher la liste des eleves elle s'affiche et s'arrete bien au dernier eleve.
OR!! le probleme de l'adresse reste inchangé voir meme empiré...
Apres avoir rentrer le prenom il m'affiche "entrez l'adresse" et dessuite apres "entrez la 1e note" sans me faire saisir l'adresse.....
En fait je pense que le mieux pour que vous voyez le probleme c'est que vous entriez le programme dans dev c++ parce que j'ai un peu du mal a expliquer le souci...
J'espere ne pas me tromper a pensant que c'est un peu plus claire et structurer qu'au debut :wacko:
PS: Normalement j'ai mis un espace entre tous les [ i ] mais par mégarde j'en ai peut etre oublié un...
PS2: j'ai fais une modif car j'avais oublié les espace d'un [ i ]