Bonjour,
J'ai un fichier qui contient
>>
//commentaire
abba*
a b c e
9 2 << taille du tableau
2 2
2 1
1 2
2 2
2 3
4 5
5 1
4 7
8 6
1 3 4
<<

La 4ème ligne représente la taille du tableau
Le reste des lignes du ligne n°5 jusqu'à ligne n°13 sont
les valeurs à remplir dans le tableau

Je veux lire ces entiers et les mettre dans le tableau,
mais j'ai pas arriver et surtout mettre les bonnes boucles
convenablement pour cette opération?
Je ne sais pas pourquoi la première valeur est valide mais les autres
sont comme des emplaements en mémoire!


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
#include <stdio.h>
#include <stdlib.h>
 
int main()
{
 
    FILE *fichier = NULL;
    fichier = fopen("d:\\a.txt", "r");
    if (fichier != NULL)
    {
   	char ligne[32];
 
        int nb_line_tab,
        nb_col_tab,nb_line_fichier = 0,
        **tab_t;
 
        while(nb_line_fichier<4)
        {
            nb_line_fichier++;
 
            fgets (ligne, sizeof ligne, fichier);
 
        }
 
        nb_line_tab=ligne[0] - '0';
        nb_col_tab=ligne[2] - '0';
        int j;
 
        //  allocation dynamique de tab_t
        int tab[10];
        tab_t = malloc(nb_line_tab* sizeof(int*));
         for(j=0;j<nb_line_tab;j++)
             tab_t[j]=malloc(nb_col_tab * sizeof(int));
                printf("\nallocation tab des trans");
        //fin allocation
        printf("\ndimension de tab des trans [%d][%d] ", nb_line_tab,nb_col_tab);
 
 
 
 
 
    //operation  change v2.3
            puts("");int cpt,entier;
 
                cpt=0; int cpt2;
           for(cpt2=0;cpt2<nb_line_tab;cpt2++)
           {
            while(cpt<nb_col_tab )
            {
                fscanf(fichier, "%d ",&entier);
                tab_t[cpt][cpt2]=entier;cpt++;
            }
 
            fseek(fichier, -1, SEEK_CUR);
 
 
            for (cpt=0; cpt<nb_col_tab;cpt++)
                 for(cpt2=0;cpt2<nb_line_tab;cpt2++)
                printf("%d\n",tab_t[cpt][cpt2]);
 
           }
 
 
 
        fclose(fichier);
    }
    return 0;
}

S'il vous plaît vous pouvez m'aidez corriger ce code,
ou vous pouvez me renseigner sur une autre solution.
Merci d'avance.
Cordialement,
alibm