C ++程序将十进制数转换为二进制

在计算机系统中,二进制数字以二进制数字系统表示,而十进制数字以十进制数字系统表示。二进制数以2为底,十进制数以10为底。十进制数及其对应的二进制数的示例如下-

小数二进制数
1501111
1001010
18岁10010
2711011

将十进制数转换为二进制的程序如下-

示例

#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);