Bonjour,
Dans le fond, j'ai besoin de récuperer des chaines de caractères et des chiffres dans une fichier texte, cependant ce qui arrive, c'est que le code que le professeur nous a donné ne doit pas être changé, mais on peut ajouter des nos lignes de codes
le contexte c'est de récuperer:
les listes de cours d'un université
le matricule des étudiant
les cours à la quelle ils sont inscrit
le nom, le prénom
et la note qui ont eu à chaque de ces cours
voici le code donné par le prof
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 #include<stdio.h> #include<string.h> #include<stdlib.h> #define MAX_ETUDIANTS 100 #define TAILLE_CHAINE 50 #define TAILLE_CHAINE_F 256 #define MAX_COURS 5 #define NB_COURS_OFFERTS 30 #define OK 1 #define ERREUR 0 //.... void chargementDonnees(FILE* pFich, EnsembleEtudiants* bdEtudiant, char nomsCours[NB_COURS_OFFERTS][TAILLE_CHAINE + 1]) { int i=0; char ligne[TAILLE_CHAINE]; while (fscanf (pFich, "%s", ligne) != EOF) /// pFich étant initiallement déjà chargé { if (strcmp(ligne, "$") != 0) { printf("%s\n", ligne); } //.. } //.. } //...le problème c'est que je voudrais récupérer chaque matricule, chaque nom, prénom, note de cours et autre dans une varibale de strcuct différent, mais le problème c'est le varible lignequi est déjà définit comme un string, alors que le matricule est une chiffre, de plus toute le fichier est pas uniforme chaque élément est pas dans une ligne, le fichier texte est ainsi:
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 typedef struct { char* unCours; // un pointeur sur un cours (i.e. cha�ne de caract�res) float note; // la note du cours }Cours; typedef struct { int matricule; // matricule d'un étudiant char prenom[TAILLE_CHAINE + 1]; // son prènom char nom[TAILLE_CHAINE + 1]; // son nom int nbCours; // nombre de cours suivis Cours coursSuivis[MAX_COURS]; // nom et note de chaque cours suivi }Etudiant; typedef struct { Etudiant tabEtudiants[MAX_ETUDIANTS]; // un tableau d'étudiants int nbEtudiants; // la cardinalité du tableau tab (i.e. le nombre effectif d'éléments) }EnsembleEtudiants;
le seul chose qui permet de faire le tansfert vers les info des étudiant c'est le caractère $... meta-physique physique_des_solides physique_des_fluides informatique_theorique introduction_a_la_logique_des_predicats cryptographie mecanique_classique marketing_de_masse histoire_de_la_revolution_francaise $ 302 Ali Muhammad 3 programmation_I 83.0 algebre_vectoriel_et_matriciel 77.0 physique_des_solides 45.0 403983 Roosevelt Theodore 4 politique_exterieure_des_etats-unis_d'amerique 59.0 micro-economie 69.0 biologie_cellulaire 78.0 ....
merci d'avance de vos réponse
si vous voulez plus de détail demandez-moi là, le programme est comme constitué de beaucoup de ligne de code
Partager