salut

j'ai quelque probleme j'espere que vous m'aidez
primo:je suis sous linux
voila le code source principal

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
#include <stdio.h>
#include "menu.h"
#include "fonction.h"
#include "champ.h"
int main()
          {  
 
             int x;
             int d;
             int nbmpjour,nbjours;
             int nbeq; 
             Tchampionnat Tc;
             Equipe eq[];
             int choixTprincipal;
                    do
                      {
                      int choixTprincipal = menuTprincipal();
                            switch(choixTprincipal)
                                  {
                                  case 1: 
 
                                        do
                                          {int choix=Menu();
                                                 switch(choix)
                                                       {
                                                        case 1:
 
                                                               do{
                                                                  int choixSaisie=MenuSaisie();
                                                                  case 1:
                                                                   int d;
                                                                   int nbmpjour,nbjours;
                                                                   int nbeq; 
                                                                   Tchampionnat Tc;
                                                                   Equipe eq[];
                                                                  Tc = CreerTchampionnat(d,nbeq,eq,nbmpjour,nbjours);
                                                                  }while(choixSaisie != 2);
 
                                                        break;
                                                        case 2:
                                                               x=MenuAffichage();
 
                                                        break;
                                                        case 3:
                                                              printf("Recherche a faire\n");
 
                                                        break;
                                                        case 4:
                                                              x=MenuClassement();
                                                        break;
                                                        }
                                          }while(choix != 5); 
                                 case 2:
                                        do
                                          {choix=Menu();
                                                 switch(choix)
                                                       {
                                                        case 1:
                                                               x=MenuSaisie();
                                                        break;
                                                        case 2:
                                                               x=MenuAffichage();
 
                                                        break;
                                                        case 3:
                                                              printf("Recherche a faire\n");
 
                                                        break;
                                                        case 4:
                                                              x=MenuClassement();
                                                        break;
                                                        }
                                          }while(choix != 5);   
 
                                  }
                       }while(choix != 3);
 
           return 0;
          }
2:
les headres .h

fonction.h:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
#include <stdio.h>
typedef struct 
{
int Duree;
int ButsPremiereMitemps;
int ButsDeuxiemeMitemps;
int ButsProlongation;
int ButsPenalty;
}ScoreEquipe;
//+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
ScoreEquipe CreerScoreEquipe(short d,int butMtps1,int butMtps2,int butProlong,int butPen)
                            {                                                                                        
                            ScoreEquipe se;
                                          printf("donnez la durée du match :\n");
                                          scanf("%d",&d);
                                          se.Duree=d;
                            //---------------------------------------------------
                                          printf("Donnez les nombres du buts en premiere Mi-temps :\n");
                                          scanf("%d",&butMtps1);
                                          se.ButsPremiereMitemps=butMtps1;
                            //---------------------------------------------------
                                          printf("Donnez les nombres du buts en deuxieme Mi-temps :\n");
                                          scanf("%d",&butMtps2);
                                          se.ButsDeuxiemeMitemps=butMtps2;
                            //---------------------------------------------------
                                          printf("Donner les nombres des buts de Prolongation:\n");
                                          scanf("%d",&butProlong);
                                          se.ButsProlongation=butProlong;
                            //---------------------------------------------------
                                          printf("Donnez les nombres des buts de penalty :\n");
                                          scanf("%d",&butPen);
                                          se.ButsPenalty=butPen;
 
                           return se;
                           }
//+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
void AffichScoreEquipe(ScoreEquipe s)
                      {
                      printf("La durée :%d\n",s.Duree);
                      printf("Buts premiere mi-temps :%d\n",s.ButsPremiereMitemps);
                      printf("Buts Deuxieme mi-temps :%d\n",s.ButsDeuxiemeMitemps);
                      printf("Buts prolongation :%d\n",s.ButsProlongation);
                      printf("Buts penalty :%d\n",s.ButsPenalty);
                      }
//++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
int TotalButs(ScoreEquipe s)
            {
            int somme = s.ButsPremiereMitemps+s.ButsDeuxiemeMitemps; 
            if (s.Duree>90)
               somme = somme + s.ButsProlongation + s.ButsPenalty;
            return somme;
            }
///////////////////////////////////////////////////////////////////////////////////////////////////////////////
#define max1 10
#define max2 4
#define max3 4
typedef char chaine[max1];
typedef struct
             {
              chaine NomEquipe, Tnomjoueur[max2],TnomStaff[max3];
             }Equipe;
//++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Equipe CreerEquipe(Equipe e)
                  {
                   int i=0;            
                           printf("Nom equipe :\n");
                           scanf("%s",e.NomEquipe);
                           //-------------------------------------------------
                           printf("Nom d'entreneur :\n");
                           scanf("%s",e.Tnomjoueur[i]);
                           //-------------------------------------------------
                           printf("les noms des joueurs :\n"); 
                           for(i=1;i<max2;i++)
                                       {
                                        printf("Nom joueur n°%d est:\n",i);
                                        scanf("%s",e.Tnomjoueur[i]);                                        
                                        }
                           //-------------------------------------------------- 
                           printf("les noms du staff téchnique : \n");
                           for(i=1;i<max3;i++)
                                       {
                                        printf("n°%d :\n",i);
                                        scanf("%s",e.TnomStaff[i]);
                                       }                                      
 
                   return e;
                  }
//+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
void AffichEquipe(Equipe e)
            {
            int i=0;
                   printf("le nom d'equipe:%s\n",e.NomEquipe);
                   printf("                Nom d'entraîneur: %s\n",e.Tnomjoueur[i]);
                   printf("                les noms des joueurs:");
                   for(i=1;i<max2;i++)
                               printf("\n                joueur n°%d est %s:",i,e.Tnomjoueur[i]);
                   printf("\n");
                   printf("                les noms du staff téchnique:");
                   for(i=1;i<=max3;i++)
                               printf("\n                n°%d est %s:\n",i,e.TnomStaff[i]);
            } 
//+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
int MemeEquipe(Equipe e1,Equipe e2)
{
if(strcmp(e1.NomEquipe,e2.NomEquipe))return 0;
else return 1;
}
///////////////////////////////////////////////////////////////////////////////////////////////////////////////
typedef struct
{
ScoreEquipe s1,s2;
}ScoreMatch;
//+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
ScoreMatch CreerScoreMatch(ScoreEquipe s1,ScoreEquipe s2)
                          {
                          ScoreMatch sm;  
                          int butMtps2,butMtps1,butProlong,butPen;short d;
                                      printf("score equipe 1 :\n");
                                      sm.s1 = CreerScoreEquipe(d,butMtps1,butMtps2,butProlong,butPen);
                                      //-------------------------------------------------------------- 
                                      printf("score equipe 2 :\n");
                                      sm.s2 = CreerScoreEquipe(d,butMtps1,butMtps2,butProlong,butPen);
                          return sm;
                          }
//+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
void AffichScoreMatch(ScoreMatch sm)
                     {
                     printf("Affichage score equipe 1 :\n");
                     AffichScoreEquipe(sm.s1);
                     printf("Affichage score equipe 2 :\n");
                     AffichScoreEquipe(sm.s2);
                     }
////////////////////////////////////////////////////////////////////////////////////////////////////////////////
typedef struct
              {
               Equipe eq1,eq2;
               ScoreMatch sm;
              }Match;
//++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Match CreerMatch(Equipe eq1,Equipe eq2,ScoreMatch sm)
                {
                Match m;
                        m.eq1 = eq1;
                        m.eq2 = eq2;
                        m.sm = sm;
                 return m;
                 } 
//+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
void AffichMatch(Match m)
                 {
                  printf("Equipe 1:\n");
                  AffichEquipe(m.eq1); 
                  printf("Equipe 2:\n");
                  AffichEquipe(m.eq2);
                  printf("Le score du match est :\n");
                  AffichScoreMatch(m.sm);
                  }
//////////////////////////////////////////////////////////////////////////////////////////////////////// 
int Resultat(Equipe e,Match m)
            {
            const int Perdu = -1,Gagne = 1,Nul = 0,NonParticipe = -2;
                  if((MemeEquipe(e,m.eq1))&&(MemeEquipe(e,m.eq2)))return NonParticipe;
                    else
                        if (TotalButs(m.sm.s1) == TotalButs(m.sm.s2)) return Nul;
                          else
                              if((MemeEquipe(e,m.eq1))&& (TotalButs(m.sm.s2)>TotalButs(m.sm.s1))) return Gagne;
                                else return Perdu;
 
}
//++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
int TotalPoints(Equipe e,Match m[],int NombreMatchs)
               {
               const int gagne = 3,Nul = 1,Perdu = 0;int i=0,totalPoints=0;
                        for(i=1;i<=NombreMatchs;i++)
                              { if(Resultat(e,m[i])==1)totalPoints+=gagne;
                                  else
                                      if(Resultat(e,m[i])==0)totalPoints+=Nul;
                                        else 
                                            if(Resultat(e,m[i])==-1)totalPoints+=Perdu;
                               }return totalPoints;
}  
//////////////////////////////////////////////////////////////////////////////////////////////////////////
void Classement(Equipe e[],int NombreEquipes,Match m[],int NombreMatchs)
               {Equipe eq;
                int i=0,j=0,k=0,k1=0,k2=0,k3=0;
               //---------------------------------------------------
               for(i=1;i<=NombreEquipes;i++)
                for(j=2;i<=NombreEquipes;j++)
                   {
                   if((TotalPoints(e[i],m,NombreMatchs)) < (TotalPoints(e[j],m,NombreMatchs))) 
                          {
                          eq = e[i];
                          e[i] = e[j];
                          e[j] = eq;
                          }          
                   }
              //----------------------------------------------------
                  for(i=1;i<=NombreEquipes;i++)
                     {
                  printf("le total des points de l'equipe de %s est %d\n",e[i].NomEquipe,TotalPoints(e[i],m,NombreMatchs));
              //----------------------------------------------------
                     if( (Resultat(e[i],m[i])== -1) || (Resultat(e[i],m[i]) == 0) || (Resultat(e[i],m[i]) == 1) )k++;
                     printf("le nombre des Matchs jouer sont: %d\n",k);
             //-----------------------------------------------------
                 for(j=1;j<=NombreMatchs;j++)
                        {
                        if ( Resultat(e[i],m[j]) == 1)
                           { 
                           k1++;
                           printf("le nombre des Matchs gagnés sont: %d\n",k1);
                           }                  
                          else 
                              if( Resultat(e[i],m[j]) == 0) 
                                 {
                                 k2++; 
                                 printf("le nombre des matchs nuls sont: %d\n",k2);
                                 }     
                                 else 
                                    if( Resultat(e[i],m[j]) == -1)
                                       { 
                                       k3++;
                                       printf("le nombre des matchs perdus sont: %d\n",k3);
                                       } 
 
                if(MemeEquipe(e[i],m[i].eq1))
                        printf("le nombre des buts marqués sont: %d\n",TotalButs(m[j].sm.s1));
                  else
                      printf("le nombre des buts marqués sont: %d\n",TotalButs(m[j].sm.s2)); 
                        }
                      }                    
}
et champ.h est
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
#include <stdio.h>
#include "fonction.h"
#define max 10
typedef char chainee[max];
typedef struct 
              {
               int jour,mois,annee;
              }Date;
typedef struct 
              {
               Date d;
               int NombreEquipes;
               int NombreMatchParjour;
               int NombreJours;
               Equipe e[];
               }Tchampionnat;
 
Tchampionnat CreerTchampionnat(int d,int nbeq,Equipe e[],int nbmpjour,int nbjours)
             {
             Tchampionnat tc; 
             printf("Donner l'annee du championnat: ");
             scanf("%d",&d);printf("\n");
             tc.d.annee = d; 
             //-----------------------------------------------------
             printf("Donner le nombre d'équipe :");
             scanf("%d",&nbeq);
             tc.NombreEquipes = nbeq; 
             //-----------------------------------------------------
             int i=0;
             printf("Donner les équipes :\n");
                     for(i=1;i<=nbeq;i++)
                        {
                        tc.e[i]=CreerEquipe(e[i]);
                        }
             //-----------------------------------------------------
             printf("Donner le nombre des matchs par jounée: \n");
             scanf("%d",&nbmpjour);
             tc.NombreMatchParjour = nbmpjour;
             //-----------------------------------------------------
             printf("Donner le nombre des jours: \n");
             scanf("%d",&nbjours);
             tc.NombreJours = nbjours;
             //+++++++++++++++++++++++++++++++++++++++++++++++++++++
             return tc;
             }
ps.(elle est ou sa barbe ) pour les erruers merci de me donner la methode de la charger ici