首页 > 学院 > 开发设计 > 正文

3.10 十进制转换为二进制

2019-11-14 12:22:31
字体:
来源:转载
供稿:网友

将十进制整数转换成二进制数

对于每个n,以11位的宽度右对齐输出n值,然后输出"-->",然后输出二进制数。

输入样例:

2

0

-12

1

输出样例:

        2-->10

        0-->0

     -12-->-1100

        1-->1

#include<iostream>#include<fstream>#include<iomanip>#include<stack>using namespace std;int main(){	ifstream cin("test.txt");//向OJ提交时,注释此句		int n;	while (cin >> n)	{		cout << setw(11) << n << "-->";				bool flag = n < 0 ? true : false;		n = flag ? n*-1 : n;		stack<int> s;		while (n)		{			s.push(n % 2);			n /= 2;		}		if (s.empty())			cout << 0;		else		{			if (flag)				cout << "-";			while (!s.empty())			{				int tmp = s.top();				s.pop();				cout << tmp;			}		}		cout << endl;	}	system("pause");//向OJ提交时,注释此句	return 0;}


发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表