C++ 十進制轉換為二進制的實例代碼。本站提示廣大學習愛好者:(C++ 十進制轉換為二進制的實例代碼)文章只能為提供參考,不一定能成為您想要的結果。以下是C++ 十進制轉換為二進制的實例代碼正文
標題內容:將十進制整數轉換成二進制數。
輸出描寫:輸出數據中含有不多於50個的整數n(-231<n<231)。
輸入描寫:關於每一個n,以11位的寬度右對齊輸出n值,然後輸入“-->”,再然後輸入二進制數。每一個整數n的輸入,自力占一行。
標題剖析:將某個數從十進制轉為二進制的詳細辦法是,該數對2取余,成果要末為1要末為0,此為該數對應二進制的末位;然後該數除以二,獲得的商再次對2取余,成果為對應二進制的倒數第二位……以此類推,曉得除以2的成果為0。
參考代碼:
#include <iostream>
#include <fstream>
#include <string>
#include <algorithm>
using namespace std;
string s;
int main(int argc,char * argv[])
{
int n;
while(cin>>n)
{
if(n==0)
{
cout<<" 0-->0\n";
continue;
}
s=" ";
for(int a=n;a;a=a/2)
{
s=s+(a%2?'1':'0');
}
std::reverse(s.begin(),s.end());
const char *sss=s.c_str();
cout.width(11);
cout<<n<<(n<0?"-->-":"-->")<<sss<<"\n";
}
system("pause");
return 0;
}
後果如圖: