Ne comprend pas le résultat aprés compilation
Bonjour, je débute en c et j'ai crée un petit programme tout bête qui est le suivant:
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23
| #include <stdio.h>
void remplacer (char ligne[], int caractere);
main()
{
char ligne[]="bonjcouir";
int caractere='c';
remplacer (ligne, caractere);
}
void remplacer (char s[], int carac)
{
int i;
for (i=0; s[i] != '0'; ++i)
if (s[i] == carac)
{
printf("bonjour\n");
}
} |
Le probléme est le résultat qui est affiché aprés compilation. Il affiche deux "bonjour" alors qu'il ne devrait en afficher qu'un car il n'y a que un c dans la chaine de caractére initialisée.Merci par avance pour vos nombreuses réponses.