How to convert an int to binary in C

4 Answers

0 votes
#include <stdio.h> 

int main(void)
{
    int i, n = 12345;
      
    for (i = 15; i >= 0; i--)
        printf("%i", (n >> i) & 1);
         
    return 0;
}
 
/*
 
run:
 
0011000000111001

*/


answered Nov 3, 2014 by avibootz
0 votes
#include <stdio.h>

void ToBinary(int number, int bits[]) {
    for (int i = 0; i < 16; i++)
        bits[i] = (number >> i) & 1;
}

int main(void)
{
    int number = 12345, bits[16];
      
    ToBinary(number, bits);
          
    for (int i = 15; i >= 0; i--)
        printf("%d", bits[i]);
          
    return 0;
}


  
/*
  
run:
  
0011000000111001

*/


answered Nov 3, 2014 by avibootz
edited Nov 25, 2023 by avibootz
0 votes
#include <stdio.h>
 
int main(void)
{
    int n = 12345;
          
    for (int i = 15; i >= 0; i--)
        putchar( (n & (1 << i)) ? '1' : '0' );
          
    return 0;
}
  
/*
  
run:
  
0011000000111001
 
*/


answered Nov 3, 2014 by avibootz
edited Nov 25, 2023 by avibootz
0 votes
#include <stdio.h>
#include <stdlib.h>

int main(void)
{
    char bits[16];
    int n = 12345;

    // char*  itoa(int value, char * str, int base);

    _itoa(n, bits, 2);
    printf("%s", bits);

    return 0;
}



/*

run:

11000000111001

*/


answered Nov 3, 2014 by avibootz
edited Nov 25, 2023 by avibootz

Related questions

2 answers 251 views
251 views asked Nov 25, 2023 by avibootz
3 answers 530 views
1 answer 199 views
1 answer 243 views
243 views asked Jul 31, 2022 by avibootz
1 answer 289 views
...