BONSOIR,
je suis débutant dans la programmation en c, et voici un programme que j'ai écris qui premet de calcul des moyennes et
que je cherche a le rendre plus robuste , mes soucis sont :
-est ce que peux travailler sans déclarer mes variable en variable globale?
-je ne peux pas entrer un nom et mettre un espace ensuite écrire un autre devant exemple: DURES REZ,est ce qu’il a une fonction qui me permettra de le faire?

MERCI ET J’ATTENDS AUSSI VOS SUGGESTIONS
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
 
#include <stdio.h>
#include <stdlib.h>
 
int NbreIngenieurs;
int NbreDeMatieres;
int i;
int j;
 typedef struct
 {    char classe[100];
     wchar_t nom[100];
     wchar_t  prenom[200];
     int matricule;
     float note[150];
     float coefficient[20];
     float NoteCoefficienter;
     float LaMoyenne;
 }Ingenieur;
 typedef Ingenieur TableDesIng[15];
 TableDesIng t1;
  void presentation();
  void lire();
  void SaisirNotes();
  void moyenne();
 
 int main()
   {
     printf("bienvenue dans le programme qui vous permet de calculer vos moyennes\n");printf("\n");
     printf("voulez-vous calculer la moyenne de combien ingenieur??\n");scanf("%d",&NbreIngenieurs);printf("\n");
     printf("l'ingenieur a t-il compose dans combien de matiere?\n");scanf("%d",&NbreDeMatieres);printf("\n");
     printf("renseigner les informations de la liste\n");printf("\n");
     presentation(); printf("\n");
     SaisirNotes();  printf("\n");
     lire();         printf("\n");
     moyenne();      printf("\n");
 
     printf("............travail achever................\n");
     printf(".                                         .\n");
     printf(".                                         .\n");
     printf(".                                         .\n");
     printf("...........MIT Akyb vouz remercie..........\n");
 
    printf("Ce fichier a ete compile le %s a %s\n", __DATE__, __TIME__);
  }
 
void presentation()
   {
for(i=0;i<NbreIngenieurs;i++)
     {
        printf("entrez le nom de l'ingenieur %d\n ",i+1);scanf("%s",&t1[i].nom);
        printf("entrez le prenoms de l'engenieur %d\n ",i+1);scanf("%s",&t1[i].prenom);
        printf("entrez le matricule de l'ingeieur %d\n ",i+1);scanf("%d",&t1[i].matricule);
        printf("entrez la classe de l'ingenieur %d\n ",i+1);scanf("%s",&t1[i].classe);
     }
     printf("voici la liste\n");printf("\n");
     for(i=0;i<NbreIngenieurs;i++)
     {
        printf("Nom: %s Prenoms: %s Matricule: %dINP  Classe: %s",t1[i].nom,t1[i].prenom,t1[i].matricule,t1[i].classe);printf("\n");
     }
   }
void SaisirNotes()
  {   printf("LES DIFFERENTES MOYENNES OBTENUES PAR L'INGENIEUR DANS CHAQUE MATIERE SONT:\n");printf("\n");
       for(i=0;i<NbreIngenieurs;i++)
       { printf(" la moyenne obtenue par l'ingenieur %s\n ",t1[i].nom );printf("\n");
        for(j=0;j<NbreDeMatieres;j++)
            {   printf("dans la matiere : %d\n ", j+1);printf("\n");scanf("%f",&t1[i].note[j]);
                printf(" entrer le coefficient : %d\n",j+1);printf("\n");scanf("%f",&t1[i].coefficient[j]);
            }
       }
  }
void lire()
  {
     printf("les igenieurs et leur differentes moyennes suivit des coefficients \n");
    for(i=0;i<NbreIngenieurs;i++)
       {  printf("l'ingenieur : %s %s\n",t1[i].nom,t1[i].prenom );
           for(j=0;j<NbreDeMatieres;j++)
           {
               t1[i].NoteCoefficienter +=t1[i].coefficient[j]*t1[i].note[j];
           }
 
        printf(".........MOYENNE COEFFICIENTER.........:%f",t1[i].NoteCoefficienter) ;
        printf("\n\n");
 
       }
  }
void moyenne()
{
 
    float TotalDesNoteCoefficienter;
    float TotalDesCoefficient;
            TotalDesNoteCoefficienter = 0;// la valeur initiale est vitale
            TotalDesCoefficient = 0; // la valeur initiale est vitale
           float  LaMoyenne=0;
   printf("voici les moyennes des differents ingenieurs \n");
   for ( i=0 ; i<NbreIngenieurs ; i++ )
        {
      printf( "l'ingenieur : %s %s\n" , t1[i].nom , t1[i].prenom );
      for ( j=0 ; j<NbreDeMatieres ; j++ )
           {
         TotalDesNoteCoefficienter += t1[i].note[j]*t1[i].coefficient[j]; // cumul des notes coefficientées
 
         TotalDesCoefficient += t1[i].coefficient[j];  // cumul des tous les coef
            } // on fin de la 2ieme boucle for ici
 
      t1[i].LaMoyenne=( TotalDesNoteCoefficienter/TotalDesCoefficient);
 
       printf( "SA MOYENNE EST : \n"  );
       printf("\n\n");
       printf(".                                         .\n");
       printf("...........................................\n");
       printf(".             est %f                      .\n", t1[i].LaMoyenne );
       printf("...........................................\n");
 
       TotalDesNoteCoefficienter = 0;// la valeur initiale est vitale
       TotalDesCoefficient = 0;     // la valeur initiale est vitale
 
 
     }  //fin de la la 1ere boucle for
}