How to convert decimal to binary in C

2 Answers

0 votes
#include <stdio.h> 
  
void convert_decimal_to_binary(int n) {
    for (int i = 31; i >= 0; i--) { // 32bit (0 - 31) 
        int k = n >> i;
        if (k & 1)
            printf("1");
        else
            printf("0");
    }
}

int main(void)
{
    int n = 120;
  
    convert_decimal_to_binary(n);
 
    return 0;
}



 
/*
run:
    
00000000000000000000000001111000
 
*/ 



answered Sep 9, 2014 by avibootz
edited May 11, 2024 by avibootz
0 votes
#include <stdio.h>
 
void ToBinary(int dec, int bin[]) {
    int i = 0;
 
    while (dec != 0) {
        bin[i] = dec % 2;
        i++;
        dec /= 2;
    }
}
 
void Print(int bin[], int size) {
    for (int i = size - 1; i >= 0; i--)
        printf("%d", bin[i]);
}
 
int main(void) {
    int dec = 253, bin[16] = { 0 };
 
    ToBinary(dec, bin);
 
    Print(bin, 16);
 
    return 0;
}
 
 
 
 
/*
run:
     
0000000011111101
     
*/

 



answered May 11, 2024 by avibootz

Related questions

1 answer 115 views
115 views asked Aug 24, 2021 by avibootz
1 answer 230 views
1 answer 201 views
2 answers 217 views
1 answer 185 views
2 answers 179 views
1 answer 131 views
131 views asked Aug 24, 2021 by avibootz
...