Je suis en train de faire un programme qui doit saisir des caracteres et les placer dans un tableau a 2 dimensions
Je m'explique : le tableau comporte 6 lignes et 4 colonnes (1 colonne/caractere)
le programme demande a l'utilisateur de saisir 4 caracteres qu'il place dans la premiere ligne du tableau, il demande ensuite de saisir 4 autres caracteres qu'il place dans la deuxieme etc...
le probleme c'est que scanf a l'air de me manger un caractere a chaque fois...
voici mon code :
si je le fait une premiere fois (en entrant AZER) le tableau devient :
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 while (gagne != 1) { nbcoups++; printf("Proposition n° %d : ", nbcoups); for ( j = 0 ; j < 5 ; j++) { scanf("%c", &cara); tab[i][j-1] = cara; } i++; // Affichage du tableau for (l = 0 ; l < 6 ; l++) {for (m = 0 ; m < 4 ; m++) {printf(" %c ", tab[l][m]);} printf("\n"); } }
AZER
OOOO
OOOO
OOOO
OOOO
OOOO
donc tout va bien
par contre la deuxieme fois il devient
AZE
AZER
OOOO
OOOO
OOOO
OOOO
troisieme foie :
AZE
AZE
AZER
OOOO
OOOO
OOOO
etc
il y a donc un caractere mangé et une ligne en plus
j'ai du mal a trouver ou est le probleme, j'ai essayé en ajoutant un getchar() mais c'est pire
si quelqu'un pouvait m'eclairer...
Partager