IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

C Discussion :

Probleme d'affichage de fichiers


Sujet :

C

  1. #1
    Nouveau membre du Club
    Profil pro
    Étudiant
    Inscrit en
    Août 2006
    Messages
    44
    Détails du profil
    Informations personnelles :
    Localisation : Maroc

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Août 2006
    Messages : 44
    Points : 28
    Points
    28
    Par défaut Probleme d'affichage de fichiers
    Salut a tous,je travaille sur un projet qui fait appelle a 2 programme.(je programme avec borland C).
    Le premier programme est un programme simple de saisie,que j enregistre dans un fichier.
    Le deuxieme est plutot long et il fait apelle au 1er programme,pour afficher toutes les informations.

    Mon probleme c'est que quand j'utilise le deuxieme programme(le principal),ne m'affiche que la premier information que j ai fait rentrer!!c'est tout,le reste c'est comme si je n avais rien taper!!!

    Alors que quand je consulte le fichier,il est normalemement remplie!!!!

    voici un bout de code du programme principal qui vous expliquera mieux:

    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
    232
    233
    234
    235
    236
    237
    238
    239
    240
    241
    242
    243
    244
    245
    246
    247
    248
    249
    250
    251
    252
    253
    254
    255
    256
    257
    258
    259
    260
    261
    262
    263
    264
    265
    266
    267
    268
    269
    270
    271
    272
    273
    274
    275
    276
    277
    278
    279
    280
    281
    282
    283
    284
    285
    286
    287
    288
    289
    290
    291
    292
    293
    294
    295
    296
    297
     
    #include<stdio.h>
    #include<conio.h>
    #include <iostream.h>
    #include <stdlib.h>
    #include <string.h>
    #include <ctype.h>
    #include <io.h>
    #include <dos.h>
    void menuprincipal();
    void curseur(int);
    void cadre(int,int,int,int,int,int,int,int,int);
    int saisie1();
    int saisie2();
    int saisie3();
    void aff4(int,int,int);
    void init(int,int,int,int);
    void zorro(char []);
    void zorro1(char []);
    main()
    {
     
     
     
    char x;
     
       int n1,n2,n3;
     
      do
    	  {
       clrscr();
       menuprincipal();
       n1=saisie1();
       n2=saisie2();
       n3=saisie3();
       aff4(n1,n2,n3);
     
     
    switch(n1)
    {
    	case 0:
           {
     
    	char problem[35]={'A','F','R','I','Q','U','I','A','\0'};
    	zorro1(problem);
    	scanf("%c",&x);
     
    	break;
     
    	}
     
     
     
     
    	 case 1:
    	{
     
           char problem[35]={'A','t','l','a','s','\0'};
           zorro1(problem);
           scanf("%c",&x);
     
    	break;
     
    	}
     
     
     
          case 2:
          {
     
    	char problem[35]={'B','U','T','S','I','R','\0'};
    	zorro(problem);
    	scanf("%c",&x);
    	break;
          }
     
     
     
          case 3:
          {
     
    	 char problem[35]={"     CMH"};/*{'C','M','H','\0'};*/
    	 zorro(problem);
    	 scanf("%c",&x);
    	 break;
     
     
           }
     
           case 4:
           {
     
    	  char problem[35]={'D','I','M','A','G','A','Z','\0'};
    	  zorro(problem);
    	  scanf("%c",&x);
    	  break;
     
           }
     
     
           case 5:
     
           {
           char problem[35]={'D','O','U','N','I','A','\0'};
           zorro1(problem);
           scanf("%c",&x);
           break;
     
           }
     
           case 6:
     
           {
           char problem[35]={'D','R','A','G','O','N','\0'};
           zorro1(problem);
           scanf("%c",&x);
           break;
     
           }
     
           case 7:
     
           {
           char problem[35]={'F','l','e','u','r','\0'};
           zorro1(problem);
           scanf("%c",&x);
           break;
     
           }
     
           case 8:
     
           {
           char problem[35]={'N','A','D','I','\0'};
           zorro1(problem);
           scanf("%c",&x);
           break;
           }
     
     
           case 9:
     
           {
           char problem[35]={'N','A','T','I','O','N','A','L','\0'};
           zorro1(problem);
           scanf("%c",&x);
           break;
           }
     
     
    	case 10:
     
    	{
    	char problem[35]={'P','E','T','R','O','M','\0'};
    	zorro(problem);
    	scanf("%c",&x);
    	break;
    	}
     
    	case 11:
     
    	{
    	char problem[35]={'S','D','B','P','\0'};
    	zorro(problem);
    	scanf("%c",&x);
    	break;
    	}
     
     
    	case 12:
     
    	{
     
    	char problem[35]= {'S','H','E','L','L','\0'};
    	zorro(problem);
    	scanf("%c",&x);
    	break;
     
    	}
     
    	case 13:
     
    	{
     
    	char problem[35]={'S','O','M','A','P','\0'};
    	zorro(problem);
    	scanf("%c",&x);
    	break;
     
    	}
     
     
    	case 14:
     
    	{
     
    	char problem[35]={'T','I','S','S','I','R','\0'};
    	zorro1(problem);
    	scanf("%c",&x);
    	break;
     
    	}
     
    	case 15:
     
    	{
     
    	char problem[35]={'T','O','T','A','L','\0'};
    	zorro(problem);
    	scanf("%c",&x);
    	break;
     
    	}
     
    	case 16:
     
    	{
     
    	char problem[35]={'Z','I','Z','\0'};
    	zorro1(problem);
    	scanf("%c",&x);
    	break;
     
    	}
     
     
     
     
     
     
     
     
    }
    }while(toupper(x)=='R');
    getch();
    //*******************************************************
    void zorro1(char problem [])
    {
     
    	     FILE *fichier;
     
     
    		     flushall();
     
    	     char client[35];
    	     char gaz[35];
    	     char anne[35];
    	     char mois[35];
    	     char k;
    	     int a,b,c,d,e,f,g,h,i,j;
    	     char nomfich[6]={'n','a','d','o','r','\0'};
    	     gotoxy(6,4);printf("Centre:NADOR");
     
    			 fichier=fopen(nomfich,"r");
     
       do
           {
    fscanf(fichier,"%s",client);
    if (strcmp(problem,client)==0)
    {
    	fscanf(fichier,"%s",gaz);
     
    	 gotoxy(58,2);fscanf(fichier,"%s",anne);printf("     ");gotoxy(58,2);printf("%s",anne);
    	 gotoxy(13,2);fscanf(fichier,"%s",mois);printf("            ");gotoxy(13,2);printf("%s",mois);
    	 gotoxy(35,9);fscanf(fichier,"%d",&a);printf("   ");gotoxy(35,9);printf("%d",a);
    	 gotoxy(66,9);fscanf(fichier,"%d",&b);printf("   ");gotoxy(66,9);printf("%d",b);
    	 gotoxy(35,12);fscanf(fichier,"%d",&c);printf("   ");gotoxy(35,12);printf("%d",c);
    	 gotoxy(66,12);fscanf(fichier,"%d",&d);printf("   ");gotoxy(66,12);printf("%d",d);
    	 gotoxy(35,16);fscanf(fichier,"%d",&e);printf("   ");gotoxy(35,16);printf("%d",e);
    	 gotoxy(66,16);fscanf(fichier,"%d",&f);printf("   ");gotoxy(66,16);printf("%d",f);
    	 gotoxy(35,19);fscanf(fichier,"%d",&g);printf("   ");gotoxy(35,19);printf("%d",g);
    	 gotoxy(66,19);fscanf(fichier,"%d",&h);printf("   ");gotoxy(66,19);printf("%d",h);
    	 gotoxy(35,22);fscanf(fichier,"%d",&i);printf("   ");gotoxy(35,22);printf("%d",i);
    	 gotoxy(66,22);fscanf(fichier,"%d",&j);printf("   ");gotoxy(66,22);printf("%d",j);
     
    	 k=getch();
     
    }
     
     
    	}while((fgetc(fichier)!=EOF)&(k==13));
    	gotoxy(48,6);curseur(1);textcolor(27);cprintf("Retour menu/Sortir(R/S)?");
    	flushall();
     
     
     
     
    		fclose(fichier);
     
     
     }
     
     
     
     
     
    }

  2. #2
    Expert éminent sénior
    Avatar de Emmanuel Delahaye
    Profil pro
    Retraité
    Inscrit en
    Décembre 2003
    Messages
    14 512
    Détails du profil
    Informations personnelles :
    Âge : 67
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Retraité

    Informations forums :
    Inscription : Décembre 2003
    Messages : 14 512
    Points : 20 985
    Points
    20 985
    Par défaut
    Citation Envoyé par mehdi.berra
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    #include <iostream.h>
    Pas du C (et du mauvais C++)...

  3. #3
    Nouveau membre du Club
    Profil pro
    Étudiant
    Inscrit en
    Août 2006
    Messages
    44
    Détails du profil
    Informations personnelles :
    Localisation : Maroc

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Août 2006
    Messages : 44
    Points : 28
    Points
    28
    Par défaut si si
    c'est du C,puisque je ne sais programmer qu'en C

    Alors tu m'aides au lieu de critiquer????

  4. #4
    Expert éminent sénior
    Avatar de Emmanuel Delahaye
    Profil pro
    Retraité
    Inscrit en
    Décembre 2003
    Messages
    14 512
    Détails du profil
    Informations personnelles :
    Âge : 67
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Retraité

    Informations forums :
    Inscription : Décembre 2003
    Messages : 14 512
    Points : 20 985
    Points
    20 985
    Par défaut
    Citation Envoyé par mehdi.berra
    c'est du C
    Non. Pas de <iostream.h> en C. Poste du code C, après on verra.

  5. #5
    Membre à l'essai
    Inscrit en
    Septembre 2006
    Messages
    15
    Détails du profil
    Informations personnelles :
    Âge : 43

    Informations forums :
    Inscription : Septembre 2006
    Messages : 15
    Points : 14
    Points
    14
    Par défaut
    Je te conseille de réduire ton code au minimum pour mettre en évidence ce qui ne fonctionne pas et nous redonner le code.

  6. #6
    Nouveau membre du Club
    Profil pro
    Étudiant
    Inscrit en
    Août 2006
    Messages
    44
    Détails du profil
    Informations personnelles :
    Localisation : Maroc

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Août 2006
    Messages : 44
    Points : 28
    Points
    28
    Par défaut code + petit
    voila un code plus petit ( j ai simplement enlever des switch) et j ai enlever iostream pour que qelqu'un qui se reconnaitra puisse jouir ouiiiiiiiiiiii qu il va dire

    bref plus serieusement aidez moi
    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
    #include<stdio.h>
    #include<conio.h>
    #include <stdlib.h>
    #include <string.h>
    #include <ctype.h>
    #include <io.h>
    #include <dos.h>
    void menuprincipal();
    void curseur(int);
    void cadre(int,int,int,int,int,int,int,int,int);
    int saisie1();
    int saisie2();
    int saisie3();
    void aff4(int,int,int);
    void init(int,int,int,int);
    void zorro(char []);
    void zorro1(char []);
    main()
    {
     
     
     
    char x;
     
       int n1,n2,n3;
     
      do
    	  {
       clrscr();
       menuprincipal();
       n1=saisie1();
       n2=saisie2();
       n3=saisie3();
       aff4(n1,n2,n3);
     
     
    switch(n1)
    {
    	case 0:
           {
     
    	char problem[35]={'A','F','R','I','Q','U','I','A','\0'};
    	zorro1(problem);
    	scanf("%c",&x);
     
    	break;
     
    	}
     
     
     
     
    	 case 1:
    	{
     
           char problem[35]={'A','t','l','a','s','\0'};
           zorro1(problem);
           scanf("%c",&x);
     
    	break;
     
    	}
     
     
     
          case 2:
          {
     
    	char problem[35]={'B','U','T','S','I','R','\0'};
    	zorro(problem);
    	scanf("%c",&x);
    	break;
          }
     
    //**********************************************
    void zorro(char problem [])
    {
     
    	     FILE *fichier;
     
     
    	     char client[35];
    	     char gaz[35];
    	     char anne[35];
    	     char mois[35];
    	     char k;
    	     int a,b,c,d,e,f,g,h,i,j;
    	     char nomfich[6]={'n','a','d','o','r','\0'};
     
    	    gotoxy(6,4);printf("Centre:NADOR");
     
    			 fichier=fopen(nomfich,"r");
     
       do
           {
    fscanf(fichier,"%s",client);
    if (strcmp(problem,client)==0)
    {
     
    	 gotoxy(58,2);fscanf(fichier,"%s",anne);printf("     ");gotoxy(58,2);printf("%s",anne);
    	 gotoxy(13,2);fscanf(fichier,"%s",mois);printf("            ");gotoxy(13,2);printf("%s",mois);
    	 gotoxy(35,9);fscanf(fichier,"%d",&a);printf("   ");gotoxy(35,9);printf("%d",a);
    	 gotoxy(66,9);fscanf(fichier,"%d",&b);printf("   ");gotoxy(66,9);printf("%d",b);
    	 gotoxy(35,12);fscanf(fichier,"%d",&c);printf("   ");gotoxy(35,12);printf("%d",c);
    	 gotoxy(66,12);fscanf(fichier,"%d",&d);printf("   ");gotoxy(66,12);printf("%d",d);
    	 gotoxy(35,16);fscanf(fichier,"%d",&e);printf("   ");gotoxy(35,16);printf("%d",e);
    	 gotoxy(66,16);fscanf(fichier,"%d",&f);printf("   ");gotoxy(66,16);printf("%d",f);
    	 gotoxy(35,19);fscanf(fichier,"%d",&g);printf("   ");gotoxy(35,19);printf("%d",g);
    	 gotoxy(66,19);fscanf(fichier,"%d",&h);printf("   ");gotoxy(66,19);printf("%d",h);
    	 gotoxy(35,22);fscanf(fichier,"%d",&i);printf("   ");gotoxy(35,22);printf("%d",i);
    	 gotoxy(66,22);fscanf(fichier,"%d",&j);printf("   ");gotoxy(66,22);printf("%d",j);
    	 k=getch();
     
    }
     
     
    	}while((fgetc(fichier)!=EOF)&(k==13));
    	gotoxy(48,6);curseur(1);textcolor(27);cprintf("Retour menu/Sortir(R/S)?");
    	flushall();
     
     
     
    		fclose(fichier);
     
     
     
     
    	 }

  7. #7
    Nouveau membre du Club
    Profil pro
    Étudiant
    Inscrit en
    Août 2006
    Messages
    44
    Détails du profil
    Informations personnelles :
    Localisation : Maroc

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Août 2006
    Messages : 44
    Points : 28
    Points
    28
    Par défaut pro
    le seul problem comme je l ai dit c'est qu il m affiche seulemeent la premeire information que j ai saisie c est tout

    mais sinon aucun problem a la compilation

  8. #8
    Membre à l'essai
    Inscrit en
    Septembre 2006
    Messages
    15
    Détails du profil
    Informations personnelles :
    Âge : 43

    Informations forums :
    Inscription : Septembre 2006
    Messages : 15
    Points : 14
    Points
    14
    Par défaut
    Je te propose d'essayer :
    1. ouverture d'un fichier
    2. écritures dans ce fichier
    3. fermeture du fichier
    4. réouverture du fichier
    5. lectures et affichages du fichier
    6. Fermeture du fichier

    Ensuite, si tout fonctionne bien, remet ton code petit à petit pour trouver d'où vient le problème.

  9. #9
    Expert éminent sénior
    Avatar de Emmanuel Delahaye
    Profil pro
    Retraité
    Inscrit en
    Décembre 2003
    Messages
    14 512
    Détails du profil
    Informations personnelles :
    Âge : 67
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Retraité

    Informations forums :
    Inscription : Décembre 2003
    Messages : 14 512
    Points : 20 985
    Points
    20 985
    Par défaut
    Citation Envoyé par mehdi.berra
    voila un code plus petit
    Ne compile pas,
    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
    Project   : Forums
    Compiler  : GNU GCC Compiler (called directly)
    Directory : C:\dev\forums\
    --------------------------------------------------------------------------------
    Switching to target: default
    Compiling: main.c
    main.c:19: warning: return type defaults to `int'
    main.c: In function `main':
    main.c:29: warning: implicit declaration of function `clrscr'
    main.c: In function `zorro':
    main.c:90: warning: implicit declaration of function `gotoxy'
    main.c:118: warning: implicit declaration of function `textcolor'
    main.c:118: warning: implicit declaration of function `cprintf'
    main.c:119: warning: implicit declaration of function `flushall'
    main.c:83: warning: unused variable `gaz'
    main.c: In function `main':
    main.c:128: error: syntax error at end of input
    Process terminated with status 1 (0 minutes, 0 seconds)
    1 errors, 7 warnings
    même avec <conio2.h> à la place de <conio.h> (MinGW)
    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
     
    Project   : Forums
    Compiler  : GNU GCC Compiler (called directly)
    Directory : C:\dev\forums\
    --------------------------------------------------------------------------------
    Switching to target: default
    Compiling: main.c
    main.c:19: warning: return type defaults to `int'
    main.c: In function `zorro':
    main.c:119: warning: implicit declaration of function `flushall'
    main.c:83: warning: unused variable `gaz'
    main.c: In function `main':
    main.c:128: error: syntax error at end of input
    Process terminated with status 1 (0 minutes, 0 seconds)
    1 errors, 3 warnings

  10. #10
    Nouveau membre du Club
    Profil pro
    Étudiant
    Inscrit en
    Août 2006
    Messages
    44
    Détails du profil
    Informations personnelles :
    Localisation : Maroc

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Août 2006
    Messages : 44
    Points : 28
    Points
    28
    Par défaut a julius
    En fait j ai essayer de voir de moi meme d ou vener le problem pour cela, j ai utiliser "trace"(borland C) qui permet de voir ce que fait le compilateur au fur et a mesure de l excution du programme
    et la j ai remarquer que quand je lui demander de m'afficher une information que j avais saisie en 2eme ou 3eme position ou plus,et bien ,il sauter directememnt la boucle do_while (qui ne doit s arreter normalement qui si elle est a la fin du fichier)
    Comme si le pointeur ne revenait pas au debut du fichier!!!!!!

  11. #11
    Nouveau membre du Club
    Profil pro
    Étudiant
    Inscrit en
    Août 2006
    Messages
    44
    Détails du profil
    Informations personnelles :
    Localisation : Maroc

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Août 2006
    Messages : 44
    Points : 28
    Points
    28
    Par défaut Pour emmanuel
    Tu n'avais pas a compiler emmanuel car il manque plein de fonction que je n ai pas mis dans le code et en plus il te manque le 1er programme qui contient le fichier

    donc c est normal qu'il y ait des erreurs!!!!!

  12. #12
    Membre à l'essai
    Inscrit en
    Septembre 2006
    Messages
    15
    Détails du profil
    Informations personnelles :
    Âge : 43

    Informations forums :
    Inscription : Septembre 2006
    Messages : 15
    Points : 14
    Points
    14
    Par défaut
    Il faudrait voir le code qui contient l’écriture dans le fichier

  13. #13
    Membre à l'essai
    Inscrit en
    Septembre 2006
    Messages
    15
    Détails du profil
    Informations personnelles :
    Âge : 43

    Informations forums :
    Inscription : Septembre 2006
    Messages : 15
    Points : 14
    Points
    14
    Par défaut
    Sinon, pour tester essaye :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    bool flag1 = (fgetc(fichier) == EOF)
    bool flag2 = (k == 13)
    avant le while

  14. #14
    Nouveau membre du Club
    Profil pro
    Étudiant
    Inscrit en
    Août 2006
    Messages
    44
    Détails du profil
    Informations personnelles :
    Localisation : Maroc

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Août 2006
    Messages : 44
    Points : 28
    Points
    28
    Par défaut pas de problem
    Le code de l ecriture du fichier est impeccable j en suis sur,d ailleur kan j'ouvre le fichier lui-meme qui contient les informations pele-mele et bien tout est bien noter dedans ,il ne manque rien!!

  15. #15
    Membre éprouvé Avatar de zooro
    Homme Profil pro
    Développeur Java
    Inscrit en
    Avril 2006
    Messages
    921
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : France, Marne (Champagne Ardenne)

    Informations professionnelles :
    Activité : Développeur Java

    Informations forums :
    Inscription : Avril 2006
    Messages : 921
    Points : 1 260
    Points
    1 260
    Par défaut
    Les noms de fonction n'explicitant pas ce qu'elles font, tu devrais commenter ton code un minimum (voire un maximum...) pour nous aider à y voir un peu plus clair.
    Par exemple, ton switch est basé sur le retour de la fonction saisie1(), or on ne sait pas ce qu'elle fait.

  16. #16
    Nouveau membre du Club
    Profil pro
    Étudiant
    Inscrit en
    Août 2006
    Messages
    44
    Détails du profil
    Informations personnelles :
    Localisation : Maroc

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Août 2006
    Messages : 44
    Points : 28
    Points
    28
    Par défaut explication
    quand tu utilise le programme
    il y a un choix a faire,l utilisateur choisie ce qu il veut voire afficher grace n1(car n1 c est le nom de la ville)
    puis le switch en fonction de n1 affiche la ville qui lui correspond avec le mois ,l 'année et des chiffres,voila,en fait cette affichage est fait par une fonction ,la FAMEUSE "ZORRO"

  17. #17
    Membre éclairé Avatar de homeostasie
    Homme Profil pro
    Inscrit en
    Mai 2005
    Messages
    939
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France

    Informations forums :
    Inscription : Mai 2005
    Messages : 939
    Points : 862
    Points
    862
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    fichier=fopen(nomfich,"r");
    Tu devrais tester l'ouverture de tes fichiers comme suit:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    if ((fichier=fopen( fichier, "r")) == NULL) {
            printf( "Impossible d'ouvrir %s en lecture.\n", fichier);
            return 1;
            }
    De même vérifie le retour de fscanf et je te conseille de plutot utiliser fgets qui n'est pas une lecture formatée.

    Utiliser à nouveau fgets sur le flux standard stdin...En cas de mauvaise saisie, tu te retrouveras bien embêté.

    Pense aussi à purger ton flux d'entrée. Il manque beaucoup de précautions, surement la cause de tes soucis

  18. #18
    Nouveau membre du Club
    Profil pro
    Étudiant
    Inscrit en
    Août 2006
    Messages
    44
    Détails du profil
    Informations personnelles :
    Localisation : Maroc

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Août 2006
    Messages : 44
    Points : 28
    Points
    28
    Par défaut a homeostasie
    J ai essayer ce que tu m a dit pr voir si le fichier s'ouvrez,et bien le problem ne vient pas de la ,le fichier s'ouvre sans probleme.

    En fait ,je crois que le probleme vient du pointeur,car le fichier s'ouvre mais il va directememt a la fin du fichier,c'est ca qui est bizarre

  19. #19
    Membre éprouvé Avatar de zooro
    Homme Profil pro
    Développeur Java
    Inscrit en
    Avril 2006
    Messages
    921
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : France, Marne (Champagne Ardenne)

    Informations professionnelles :
    Activité : Développeur Java

    Informations forums :
    Inscription : Avril 2006
    Messages : 921
    Points : 1 260
    Points
    1 260
    Par défaut
    Citation Envoyé par homeostasie
    Utiliser à nouveau fgets sur le flux standard stdin...En cas de mauvaise saisie, tu te retrouveras bien embêté.
    Pense aussi à purger ton flux d'entrée. Il manque beaucoup de précautions, surement la cause de tes soucis
    Je pense aussi que tout vient de là.
    Dans ta boucle, tu lis le premier mot de la ligne, et tu ne lis la suite que si ce mot correspond à ce que tu attends. Dans le cas contraire, tu fais quoi ???

    Moi je lirais toute la ligne par fgets, ensuite je regarderais le 1er mot, pour voir s'il correspond à ce que j'attends.
    Si c'est le cas, je parse la ligne et j'affiche les infos.
    Sinon, je lis la ligne suivante.

  20. #20
    Nouveau membre du Club
    Profil pro
    Étudiant
    Inscrit en
    Août 2006
    Messages
    44
    Détails du profil
    Informations personnelles :
    Localisation : Maroc

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Août 2006
    Messages : 44
    Points : 28
    Points
    28
    Par défaut expli
    En fait ,moi ce que je recherche c'est seulement un mot par exemple 'afriquia gaz' s'il ne tombe pas dessus ,la fonction continue a chercher jusqu a arriver a la fin du fichier

    Pour mieux expliquer voila comment sont organiser les informations dans le fichier:
    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
    Atlas Sahara
    2000
    JANVIER
    1
    1
    1
    1
    1
    1
    1
    1
    1
    1
    Atlas Sahara
    2002
    JANVIER
    2
    2
    2
    2
    2
    2
    2
    22
    2
    2
    Atlas Sahara
    2006
    JUIN
    5
    5
    5
    5
    5
    5
    5
    5
    55
    5
    AFRIQUIA GAZ
    2000
    JANVIER
    11
    11
    11
    11
    11
    11
    11
    11
    11
    11
    Et en fait la fonction ne m'affiche que 'Atlas Sahahra' le reste elle l ignore et fait comme si elle etait arriver a la fin du fichier!!!

+ Répondre à la discussion
Cette discussion est résolue.
Page 1 sur 2 12 DernièreDernière

Discussions similaires

  1. [Débutant] un probleme d'affichage sur fichier txt
    Par tita88 dans le forum MATLAB
    Réponses: 12
    Dernier message: 30/04/2011, 04h40
  2. probleme pour l'affichage du Fichier
    Par mathiew dans le forum Débuter
    Réponses: 2
    Dernier message: 30/04/2009, 19h56
  3. probleme d'affichage en ligne d'un fichier .swf
    Par kamnouz dans le forum Intégration
    Réponses: 1
    Dernier message: 10/09/2008, 13h52
  4. Problème d'affichage nom de fichier
    Par melmouj dans le forum Shell et commandes GNU
    Réponses: 1
    Dernier message: 06/07/2006, 16h53
  5. Problème d'affichage fichier texte
    Par justind1989 dans le forum Langage
    Réponses: 5
    Dernier message: 06/04/2006, 19h21

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo