有如下幾種方法:
#include 〈iostream〉
#include 〈list〉
#include 〈bitset〉
using namespace std;
1.//遞歸輸出二進制函數(shù)
void BinaryRecursion(int n)
{
int a;
a=n%2;
n=a;
if (n==0)
return;
else
BinaryRecursion(n);
cout〈〈a;
}
2.//使用容器轉換二進制
void BinaryVector(int n)
{
int temp;
temp=n;
list〈int〉 L;
while(temp!=0)
{
L.push_front(temp%2);
temp=temp〉〉1;
}
for (list〈int〉::iterator iter=L.begin();iter!=L.end();iter++ )
cout〈〈*iter;
cout〈〈endl;
}
3.//一般方法,32位,逐步與1做與運算。
void Binarycout(int n)
{
for (int i=31;i〉=0;i--)
{
cout〈〈((n〉〉i)&1);
}
cout〈〈endl;
}
4.//使用bitset轉換二進制
void BinaryBitset(int n)
{
cout〈〈bitset〈sizeof(int)*8〉(n)〈〈endl;
}
int main()
{
int a=1045,b=2;
int c;
c=a+b;
cout〈〈"BinaryRecursion(c):";
BinaryRecursion(c);
cout〈 BinaryVector(c);
cout〈〈"Binarycout(c):";
Binarycout(c);
cout〈〈"BinaryBitset(c):";
BinaryBitset(c);
cout〈〈"BinaryChar(c):";
BinaryChar(c);
//cout〈 return 0;
}
輸出沒有直接顯示二進制的 ,能通過其他庫函數(shù)轉換一下
int decimal = 200;
char binary[255];
itoa(decimal, binary, 2);
cout << binary;
@import url(http://www.shnenglu.com/CuteSoft_Client/CuteEditor/Load.ashx?type=style&file=SyntaxHighlighter.css);@import url(/css/cuteeditor.css);
posted on 2018-01-07 00:58
聶文龍 閱讀(4917)
評論(0) 編輯 收藏 引用