Bonjour à tou(te)s,
le programme qui pose problème est destiné à lire une ligne de texte en entrée, et à remplacer tous les espaces que celle-ci peut eventuellement contenir par "_". Mon bout de code, et après je vous explique ce qui ne va pas:
Lorsque la ligne de texte est "ceci est un exemple" j'obtiens bien en sortie "ceci_est_un_exemple" mais lorsque la ligne de texte est "0 1 2 3 4" j'obtiens "_1_2_3_4", pourquoi le 0 est ignoré? Il n'est pas considéré comme un espace? Ce serait pourtant le seul cas qui expliquerait cette sortie "imprévue".
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 #include <stdio.h> #include <stdlib.h> int main() { char caractereLu = ' '; long phrase = 0; scanf("%ld", &phrase); while(caractereLu != '\n') { scanf("%c", &caractereLu); if(caractereLu != ' ') printf("%c", caractereLu); else printf("_"); } return 0; }
Merci à ceux qui passent par là!
Partager