題目描述
已知一個只包含0和1的二進制數,長度不大於10,將其轉換為十進制並輸出。
輸入描述
輸入一個二進制整數n,其長度不大於10
輸出描述
輸出轉換後的十進制數,占一行
樣例輸入
110
樣例輸出
6
solution:
很多學過C初學C++的人可能想到的是用字符數組形式讀入再一位一位計算成十進制輸出。
沒必要。
C++類庫提供了二進制數據類,並且可以用其方法轉換成十進制。
代碼如下:
1 #include <iostream> 2 using namespace std; 3 4 #include <bitset> 5 6 int main() 7 { 8 bitset<16> bint; // 16 bit 二進制數據,還有 bitset<32> 9 10 cin >> bint; 11 cout << bint.to_ulong() << endl; 12 13 return 0; 14 }