C Program to convert octal to binary number
Program
#include<math.h>
#include<stdio.h>
long long octal_binary(int octal) {
int decimal = 0, i = 0;
long long binary = 0;
// convert octal to decimal
while (octal != 0) {
decimal += (octal % 10) * pow(8, i);
++i;
octal /= 10;
}
i = 1;
// convert decimal to binary
while (decimal != 0) {
binary += (decimal % 2) * i;
decimal /= 2;
i *= 10;
}
return binary;
}
int main() {
int octal;
printf("Enter an octal number: ");
scanf("%d", &octal);
printf("Binary equivalent is:\t%lld\n", octal_binary(octal));
return 0;
}
Output
$ gcc convert-octal-to-binary.c -lm
$ ./a.out
Enter an octal number: 67
Binary equivalent is: 110111