在计算机系统中,二进制数字以二进制数字系统表示,而十进制数字以十进制数字系统表示。二进制数以2为底,十进制数以10为底。十进制数及其对应的二进制数的示例如下-
小数 | 二进制数 |
---|---|
15 | 01111 |
10 | 01010 |
18岁 | 10010 |
27 | 11011 |
将十进制数转换为二进制的程序如下-
#include <iostream> using namespace std; void DecimalToBinary(int n) { int binaryNumber[100], num=n; int i = 0; while (n > 0) { binaryNumber[i] = n % 2; n = n / 2; i++; } cout<<"Binary form of "<<num<<" is "; for (int j = i - 1; j >= 0; j--) cout << binaryNumber[j]; cout<<endl; } int main() { DecimalToBinary(15); DecimalToBinary(10); DecimalToBinary(18); DecimalToBinary(27); return 0; }
输出结果
Binary form of 15 is 1111 Binary form of 10 is 1010 Binary form of 18 is 10010 Binary form of 27 is 11011
在上面的程序中,DecimalToBinary函数具有十进制数n的二进制值,并存储在array binaryNumber []中。使用while循环,循环的每次迭代将n模2运算的结果存储在binaryNumber []中。
使用以下代码段显示。
while (n > 0) { binaryNumber[i] = n % 2; n = n / 2; i++; }
此后,使用for循环显示二进制数。这显示如下-
cout<<"Binary form of "<<num<<" is "; for (int j = i - 1; j >= 0; j--) cout << binaryNumber[j];
该main()
函数仅包含DecimalToBinary()
对各种十进制数字的函数调用。
在下面的代码片段中显示了这一点。
DecimalToBinary(15); DecimalToBinary(10); DecimalToBinary(18); DecimalToBinary(27);