bonsoir, je suis un debutant en C et j'ai un programme et j'essaye tant bien que mal de faire un prog pour l'ecole et j'ai beosin d'aide pour un de mes sous programme et pour me dire si ce que j'ai codé est bon pour l'instant car malheureusement je ne peut coder qu'a l'ecole car sur mon PC et j'ai vista eet j'attend qu'un de mes camarades me fournissent un logiciel pour code

Voici mon code:

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
 
// declaration des librairies
 
#include <stdio.h>
#include <string.h>
#include <stdlib.h>
 
 
// Définie les pointeurs de fichier
FILE *fichier_demandeur;
FILE *fichier_historique;
 
// definie les numeros des entres de commande
 
# define NUM_FICHIER_DEMANDEUR 1
# define NUM_FICHIER_HISTORIQUE 2
# define LONGUEUR_LIGNE 255
 
 
 
typedef struct demandeur
{
	char identifiant [50];
        char prenom [50];
        char nom [50];
        char date_de_naissance [50];
        char adresse [50];
        char ville [50];
        char chomeur;
 
} demandeur;
 
 
 
// sous programme permettant de visusalliser les données données d'un utilisateur
 
int view()
{
	// declaration des variables
	char rechercher_nom;
 
	printf("Tapez quelques lettres pour rechercher un demandeur\n");
	scanf("%s",recherche_nom);
 
//mon probleme se trouve a se niveau je n'ai aucune idée pour afficher seulement les identifiants
// ki commance par rercher_nom et je ne sais meme pas si cette commande d'affichage est valable
	printf(demandeur.identifiant,demandeur.nom,demandeur.prenom)
 
}
 
 
//prog principale
 
int main( int argc, char *argv[])
 
{
 
 
        // declaration des variables
 
        int erreur_commande=0;
        char choix;
	char *tmp;
	char ligne[LONGUEUR_LIGNE];
 
        // Debut des verification
 
        // Verification du bon nombre de mot en entree
 
        if ( argc < NUM_FICHIER_HISTORIQUE )
        {
                erreur_commande++;
        }
 
        if ( argc > NUM_FICHIER_HISTORIQUE +1 )
        {
                erreur_commande++;
        }
 
        // Ouverture des fichiers ssi pas d'erreur de commande
 
        if ( !erreur_commande )
 
        {
 
                // Ouverture du fichier demandeur
 
                fichier_demandeur = fopen ( argv[NUM_FICHIER_DEMANDEUR], "r");
 
                if( fichier_demandeur == NULL )
                {
                        erreur_commande++;
                }
 
 
		else
		{
 
			// stockage des données dans la structure
 
			while (fgets(ligne,sizeof ligne, fichier_demandeur)
 
 
			// copie de lidentifiant du fichier source dans demandeur.idenfiant
			tmp = strtok(ligne,';');
			strcpy(demandeur.identifiant,donne);
 
			//copie du nom dans demandeur.nom
			tmp = strtok(NULL,';');
			strcpy(demandeur.nom,donne);
 
			//copie du prenom dans demandeur.prenom
			tmp = strtok(NULL,';');
			strcpy(demandeur.prenom,donne);
 
			//copie de la date de naissance dans demandeur.date_de_naissance
			tmp = strtok(NULL,';');
			strcpy(demandeur.date_de_naissance,donne);
 
			//copie de l'addresse dans demandeur.adresse
			tmp = strtok(NULL,';');
			strcpy(demandeur.adresse,donne);
 
			//copie de la ville dans demandeur.ville
			tmp = strtok(NULL,';');
			strcpy(demandeur.ville,donne);
 
			//copie de du statut dans demandeur.chomeur
			tmp = strtok(NULL,';');
			strcpy(demandeur.chomeur,donne);
 
 
 
			//Ouverture du fichier historique
 
                	fichier_historique = fopen ( argv[NUM_FICHIER_HISTORIQUE], "r")
 
 
                	if( fichier_historique == NULL )
               		{
                        	erreur_commande++;
                	}
 
                	printf("VIEW   : v ou V --> Consulter les informations\n");
                	printf("UPDATE : u ou U --> Mettre ` jour les informations d'un demandeur\n");
                	printf("DELETE : d ou D --> Supprimer un demandeur\n");
                	printf("ADD    : a ou A --> Ajouter un demandeur\n");
                	printf("SHOW   : s ou S --> Montrer la reprisentation de l'arbre binaire\n");
 
                	printf("Commande:");
                	choix=getchar();
 
               		choix=tolower(choix);
 
                	switch(choix)
                	{
                        	case 'v' :
                        	case 'V' :
 
// je ne sais pas quoi echange comme variable avec mon sous programme
                                        	view();
                                        	break;
                        	case 'u' :
                        	case 'U' :
                                        	printf("cool-2\n");
                                        	break;
                        	case 'd' :
                        	case 'D' :
                                        	printf("cool-3\n");
                                        	break;
                        	case 'a' :
                        	case 'A' :
                                        	printf("cool-4\n");
                                        	break;
                        	case 's' :
                        	case 'S' :
                                        	printf("cool-5\n");
                                        	break;
                        	default :
                                        	printf("ERREUR Commande invalide\n");
                                        	break;
                	}
		}
 
 
        }
 
}