十进制转二进制

来源:互联网 发布:淘宝我的发票灰色的 编辑:程序博客网 时间:2024/05/16 05:37
/*十进制转二进制:用2辗转相除至结果为1 将余数和最后的1从下向上倒序写 就是结果例如302302/2 = 151 余0 151/2 = 75 余1 75/2 = 37 余1 37/2 = 18 余1 18/2 = 9 余0 9/2 = 4 余1 4/2 = 2 余0 2/2 = 1 余0 故二进制为100101110 */#include<iostream>using namespace  std;#include<stack>void Decimal_to_binary(int n)//十进制转而二进制{    int count=0;int num=0;stack<int> st;while(0!=n){       int y=n%2;   st.push(y);       n=n/2;   num++;}while(!st.empty()){cout<<st.top();st.pop();}}int main(){char a;cin>>a;Decimal_to_binary(int(a));return 0;}

0 0