cpptemplate.cpp

来自「十进制转换为二进制的3种实现方法」· C++ 代码 · 共 47 行

CPP
47
字号
//=====================================
// title: 十进制转换为二进制
// author: cjj
// date: 2007-10-09
/* Description: 
*/
//=====================================

#include <iostream>
#include <vector>
#include <iomanip>
using namespace std;

int main()
{
	for (int n; cin >> n;)
	{
		//处理0的情况
		if (n == 0)
		{
			cout << setw(11) << right << n << "-->" << 0 << endl;
			continue;
		}

		//求出计算结果,并保存在一个向量中		
		vector<int> Remain(1000);
		int DiveNum = (n > 0 ? n : -n);		
		int i = 0;
		for (; DiveNum; i++)
		{
			Remain[i] = (DiveNum % 2);
			DiveNum /= 2;
		}

		//按格式要求输出
		cout << setw(11) << right << n << "-->";	
		cout << (n < 0 ? "-" : "");  //如果为符号,需要输出符号
		for (int j = i - 1; j >= 0; j--)		//在向量中,逆向输出
		{
			cout << Remain[j];
		}
		cout << endl;
	}
	return 0;
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?