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
| #include <stdio.h> #include <math.h> int binary_decimal(int n); int decimal_binary(int n); int main(){ int n; char c; printf("Instructions:\n"); printf("1. convert binary to decimal.\n"); printf("2. convert decimal to binary.\n"); scanf("%c", &c); if (c == '1'){ printf("Enter a binary number: "); scanf("%d", &n); printf("%d in binary = %d in decimal", n, binary_decimal(n)); } if (c == '2'){ printf("Enter a decimal number: "); scanf("%d", &n); printf("%d in decimal = %d in binary", n, decimal_binary(n)); } return 0; } int decimal_binary(int n){ int rem, i = 1, binary = 0; while (n != 0){ rem = n % 2; n /= 2; binary += rem * i; i *= 10; } return binary; }
int binary_decimal(int n) { int decimal = 0, i = 0, rem; while (n != 0){ rem = n % 10; n /= 10; decimal += rem * pow(2, i); ++i; } return decimal; }
|