C++ 程式:將十進位制數轉換為二進位制數
在計算機系統中,二進位制數表示為二進位制數碼系統,而十進位制數表示為十進位制數碼系統。二進位制數採用基數 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 的二進位制值,並存儲在陣列 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);
廣告