实现二进制与十进制之间的相互转换
2017-06-15 21:16
375 查看
/* C programming source code to convert either binary to decimal or decimal to binary according to data entered by user. */ #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. Enter alphabet 'd' to convert binary to decimal.\n"); printf("2. Enter alphabet 'b' to convert decimal to binary.\n"); scanf("%c",&c); if (c =='d' || c == 'D') { printf("Enter a binary number: "); scanf("%d", &n); printf("%d in binary = %d in decimal", n, binary_decimal(n)); } if (c =='b' || c == 'B') { 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) /* Function to convert decimal to binary.*/ { 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) /* Function to convert binary to decimal.*/ { int decimal=0, i=0, rem; while (n!=0) { rem = n%10; n/=10; decimal += rem*pow(2,i); ++i; } return decimal; }
结果输出:
相关文章推荐
- 实现二进制与十进制之间的相互转换
- 二进制,八进制,十进制与十六进制之间的相互转换
- [ActionScript 3.0] 十进制与二进制,十六进制等数据之间的相互转换
- Java 二进制,八进制,十进制,十六进制之间的相互转换
- 二进制、十进制以及十六进制之间的相互转换
- 利用sprintf和sscanf实现十六进制和十进制之间的相互转换
- C++实现二进制、八进制、十进制、十六进制的相互转换
- 二进制 十进制和byte之间相互转换
- 二进制、八进制、十进制、十六进制之间的相互转换
- js进行二进制和十进制之间的相互转换
- 二进制、八进制、十进制、十六进制之间的相互转换
- vc 十进制 二进制 十六进制 之间的相互转换
- Java中二进制和十进制整数之间相互转换的思考
- js实现二进制与十进制的相互转换
- 利用sprintf和sscanf实现十六进制和十进制之间的相互转换
- 二进制、十进制以及十六进制之间的相互转换
- 进制转换(二进制、八进制、十进制与十六进制之间的相互转换)
- 利用sprintf和sscanf实现十六进制和十进制之间的相互转换
- 使用bitset实现二进制和十进制的相互转换
- 2 进制转换 | 二进制、八进制、十进制、十六进制整型常量之间的相互转换