bonsoir ,
voila j'ai tout essayé , mais j'ai pas trouvé la solution
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
#include <stdio.h>
 
struct profil {
 
	char nom[20];
	char prenom[20];
	int age;
};
 
void vidage(void)
{
	scanf("%*[^\n]");
	getchar();
}
 
void main()
{	
	profil nouveau;
	FILE *f;
	char ch[100];
	int choix;
printf("-------------------------------------\n");
printf("Fiche V 0.0 \n");
printf("-------------------------------------\n");
printf("BOUGUERRA MOHAMED SIRE G 4\n");
	printf("\n");
	printf("Choisir une de ces possibilité \n");
	printf("1 : creer le fichier \n");
	printf("2 : lire le fichier \n");
	printf("3 : ajouter une fiche \n");
	printf("4 : rechercher une fiche \n");
	printf("\n");
	scanf("%d" , &choix);
 
switch(choix)
{
case 1: { f=fopen("data.txt","w+"); fclose(f); } break;
case 2: { 
	f=fopen("data.txt","r");
	fgets(ch,100,f);
	printf("%s", ch);
	fclose(f);
		} break;
case 3: { 
	f=fopen("data.txt","a+");
		printf("nouvelle Fiche : \n");
		printf("\n donner le nom : ");
		vidage();
		scanf("%s", nouveau.nom);
		printf("\n donner le prenom : ");
		vidage();
		scanf("%s", nouveau.prenom );
		printf("\n donner l age : ");
		vidage();
		scanf("%i", &nouveau.age ); //voici le problème , le compilateur me donne un certain 124050 !! 
		vidage();
 
		//testin
printf("-------------------\n");
printf("%s\n",nouveau.nom);
printf("%s\n",nouveau.prenom);
printf("%i\n", &nouveau.age);
 
// testin ends
		fputs(nouveau.nom,f);
		fputs("     ",f);
		fputs(nouveau.prenom,f);
		fputs("     ",f);
		putc(nouveau.age,f);
		putc('\n',f);
 
		fclose(f);
		} break;
default: printf("say bye\n");
 
}
 
 
 
}