zoukankan      html  css  js  c++  java
  • 十进制转二进制-高速算法

    #include<iostream>
    #include<string>
    #include<algorithm>
    using namespace std;
    int main(int agrc, char *agrv[])
    {
    	int iInPut = 0;
    	while (cin >> iInPut)
    	{
    
    		string sBinary;//转换后的二进制存储为字符串,调用了默认构造函数初试化为空串
    		int temp = abs(iInPut);
    		if (temp == 0)
    		{	
    			//cout.width(11);//以11位的宽度右对齐输出
    			cout << "          0-->0
    ";
    			continue;
    		}
    
    		while (temp)
    		{
    			if (temp & 0x01)
    			{
    				sBinary += '1';
    			}
    			else
    			{
    				sBinary += '0';
    			}
    			temp >>= 1;//对正数右移,高位补0
    		}
    		reverse(sBinary.begin(), sBinary.end());
    		const char *cOutPut = sBinary.c_str();
    		cout.width(11);
    		cout << iInPut << (iInPut > 0 ? "-->" : "-->-") << cOutPut << endl;
    	}
    	return 0;
    }

查看全文
  • 相关阅读:
    python基础(常量,数据类型,if)
    c字符串操作函数
    磁盘读写,合并排序字符串
    5个学生,3门成绩,输入信息,保存到文件
    关于MQTT、HTTP、WebService
    循环队列Circular Queue
    ISR中断服务程序
    PID控制
    Linux定时器接口
    Embedded Agent
  • 原文地址:https://www.cnblogs.com/ldxsuanfa/p/10783856.html
  • Copyright © 2011-2022 走看看