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 :

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");
 
}
}
si je le fait une premiere fois (en entrant AZER) le tableau devient :

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...