bonsoir a tous!
voila, j'ai code une fonction me permettant de convertir un nombre decimal en un nombre binaire; evidemmenty ca ne fonctionne du moins a moitie.
avant de retourner la valeur convertit ca fonctionne mais lorsque je fait un return pour l'affichez dans le main, c'as m'affiche du bordel....
voici le code :
resultat a l'ecran :
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
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48 char *convert_dec_to_bin(int nb) { int i; char str[9]; int j; for (i = 128, j = 0; j <= 7; i/= 2, j++) { if (nb - i >= 0) { str[j] = '1'; nb = nb - i; } else str[j] = '0'; } str[j] = '\0'; printf("%s\n", str); return(str); } char *convert_bin_to_dec(char *str) { int i; int j; int nb; char c; nb = 0; for (j = strlen(str) - 1, i = 1; i != 128; i *= 2, j--) { if (str[j] == '1') nb = nb + i; } c = nb; printf("%c", c); return (c); } int main() { char *binaire; binaire = convert_dec_to_bin(97); printf("%s", binaire); return(0); }
01100001 -------------------> ok
Ðè¿¿Hè¿¿Ù¦º½ø~½½Tè---------------->apres le return
Partager