Un printf(" %s",...) qui n'affiche pas les 2 premiers caracteres

Tez251 Messages postés 13 Statut Membre -  
Pierre1310 Messages postés 8854 Statut Membre -
Bonjour, j'ai un soucis dans un programme avec un printf.
Je rentre dans le tableau "nom1[50]" le nom du joueur 1 à l'aide d'un
scanf(" %s", nom1); mais quand je veux l'afficher avec printf(" %s", nom1); le terminal n'affiche pas les deux premiers caractères du prénom...

voici mon programme :

int main()
{
	int l,c,tour,colonne;
	char paneau[6][7], nom1[50], nom2[50];
	
	system("clear");

	printf("joueur N1 : entrez votre prénom :");
	scanf("%s" ,nom1);	

			 			 
			 //entrée du caractere "espace" chaque case du tableau//
	
	for(l=1; l<=6; l++)
	{
		
		for(c=1; c<=7; c++)
		{
			paneau[l][c]=' ';	
		}	
	}

	printf(" votre prénom est : %s \n\n ",nom1);
		
	return(0);

}


voici ce que renvois le terminal :

joueur N1 : entrez votre prénom :lucas
votre prénom est : cas

A partir du moment ou j'enlève la boucle for, le problème n'est plus la... Mais j'ai besoin de cette boucle for pour la suite du programme !

Merci de vos réponses .

1 réponse

  1. Pierre1310 Messages postés 8854 Statut Membre 652
     
    Bonjour,

    mets l-1 et c-1 dans le crochets de ton tableau.
    0
    1. Tez251 Messages postés 13 Statut Membre
       
      Bonjour, merci de ta réponse rapide.Ok je vais essayer mais Je ne comprends pas quel est le rapport entre le tableau "paneau" et le %s de mon printf qui affiche le tableau 'nom1'..
      0
    2. Pierre1310 Messages postés 8854 Statut Membre 652
       
      Les tailles de tableau commencent à 0 et ta boucle commence à 1, ça peut expliquer.
      0
    3. Tez251 Messages postés 13 Statut Membre
       
      oui ok j'ai compris et ca marche merci beaucoup
      0
    4. Pierre1310 Messages postés 8854 Statut Membre 652
       
      De rien, pense y la prochaine fois.
      0