nicolas | Mon programme foire completement,
je ne comprends pas bien l'utilisation des fonctions et des structures
voila pourquoisans doute tant de problemes...
merci d'aider un pauvre debutant comme moi...
Code :
- #include <stdio.h>
- #include <string.h>
- #define MAX 50
- #define SIZE 20
- struct etudiant
- {
- char nom[SIZE] ;
- char code ;
- int cote1 ;
- int cote2 ;
- int cote3 ;
- };
- int menu(void) ;
- void saisie(struct etudiant tab[], int *dim) ;
- void affichage(struct etudiant tab[], int dim) ;
- main()
- {
- int choix ;
- int end = 0 ;
- int dim ;
- struct etudiant tableau[MAX] ;
- do
- {
- choix = menu() ;
- switch(choix)
- {
- case 1 :
- saisie(tableau, &dim) ;
- break ;
- case 2 :
- affichage(tableau, dim) ;
- break ;
- case 3 :
- end = 1 ;
- break ;
- }
- }
- while(end == 0) ;
- }
- int menu(void)
- {
- int x ;
- printf("\n\n\n----- Menu -----\n\n\n" ) ;
- printf("1 : Saisie des etudiants\n" ) ;
- printf("2 : Affichage des etudiants avec la moyenne des cotes\n" ) ;
- printf("6 : Quitter\n\n\n" ) ;
- printf("Votre choix : " ) ;
- scanf("%d",&x) ;
- return x ;
- }
- void saisie(struct etudiant tab[], int *dim)
- {
- int x ;
- int i=0, j ;
- int result, position ;
- struct etudiant temp ;
- do
- {
- printf("\n\nCombien d'etudiant voulez-vous saisir (max 50) " ) ;
- scanf("%d", &x) ;
- }
- while(x > MAX || x < 1) ;
- *dim = x ;
- printf("\n\n\n----- Etudiant numero %d -----\n\n", x) ;
- printf("Nom : " ) ;
- fflush(stdin) ;
- gets(temp.nom) ;
- printf("Code (1 caractere) : " ) ;
- scanf("%c", &temp.code) ;
- printf("Cote 1 : " ) ;
- scanf("%d", &temp.cote1) ;
- printf("Cote 2 : " ) ;
- scanf("%d", &temp.cote2) ;
- printf("Cote 3 : " ) ;
- scanf("%d", &temp.cote3) ;
- }
- void affichage(struct etudiant tab[], int dim)
- {
- int i, moyenne, moyenne_totale=0 ;
- for(i=1; i<=dim; i++)
- {
- moyenne = (tab[i].cote1 + tab[i].cote2 + tab[i].cote3)/3 ;
- moyenne_totale = moyenne_totale + moyenne ;
- printf("\n\n\n----- Etudiant %d -----\n\n", i) ;
- printf("Nom : %s\n", tab[i].nom) ;
- printf("Code : %c\n\n", tab[i].code) ;
- printf("Cote 1 : %d\n", tab[i].cote1) ;
- printf("Cote 2 : %d\n", tab[i].cote2) ;
- printf("Cote 3 : %d\n\n", tab[i].cote3) ;
- printf("Moyenne : %d", moyenne) ;
- if((i%2)==0)
- fflush(stdin) ;
- getchar() ;
- }
- moyenne_totale = moyenne_totale/dim ;
- printf("\n\n\nMoyenne totale : %d", moyenne_totale) ;
- }
|
|