How to convert octal number to binary number in C

1 Answer

0 votes
#include <stdio.h> 
#include <math.h> 
 
long OctalToBinary(int octal);
long OctalToDecimal(int octal);

int main(void)
{
	int octal = 753;

	printf("Binary  = %ld\n", OctalToBinary(octal));

	return 0;
}

long OctalToBinary(int octal)
{
	int i = 1;
	long binary = 0;

	int decimal = OctalToDecimal(octal);

	while (decimal != 0)
	{
		binary += (decimal % 2) * i;
		decimal /= 2;
		i *= 10;
	}

	return binary;
}
long OctalToDecimal(int octal)
{
	int decimal = 0, i = 0;

	while (octal != 0)
	{
		decimal += (octal % 10) * pow(8, i);
		i++;
		octal /= 10;
	}

	return decimal;
}
 
  
/*
run:
    
Binary  = 111101011
 
*/

 



answered Jun 10, 2017 by avibootz

Related questions

1 answer 162 views
1 answer 151 views
1 answer 159 views
1 answer 130 views
130 views asked Jul 24, 2022 by avibootz
1 answer 107 views
107 views asked Jul 24, 2022 by avibootz
1 answer 124 views
124 views asked Jul 23, 2022 by avibootz
...