1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22
| typedef unsigned char tableau[9][9][10];
void lire_fichier(char *nf, tableau t1)
{
int ligne, col, k;
FILE *f;
f = fopen(nf, "r");
if( f!= NULL) // tester l'ouverture du fichier
{
for (ligne = 0; ligne < 9; ligne++)
for (col = 0; col < 9; col++)
{
fscanf(f, "%1d", &t1[ligne][col][0]); // stocker la valeur en [0]
// initialiser le reste du tableau associé à chaque case (ligne,col):
// exemples :
// Si la valeur entrée est 0 le tableau associé est {0,1,1,1,1,1,1,1,1,1}
// Si la valeur entrée est 5 le tableau associé est {5,0,0,0,0,1,0,0,0,0}
for(k=1; k<10;k++) t1[ligne][col][k]= t1[ligne][col][0] == 0 ? 1 : t1[ligne][col][0] == k;
}
fclose(f);
}
else printf(" Erreur d'ouverture du fichier %s\n",nf);
} |