10进制转2进制(或n进制)

#include<iostream>
#define N 2
using namespace std;


void exchange_DB(int n)
{
        if(n==0)
	{
		cout<<"0"<<endl;
		return;
	}

	int i=0,m,num[100];
	char bin[N]={'0','1'};//数组存放n进制数所含数字
	while(n>0)
	{
		num[i++]=n%N;//对十进制数求模取余,模即要转换的进制,余数存放在数组中
		n=n/N;//继续对商求模取余
	}
	for(i=i-1;i>=0;i--)//逆序输出余数,即为结果
	{
		m=num[i];
		cout<<bin[m];
	}
	cout<<endl;
}

int main()
{
	while(1)
	{
		int n;
		cin>>n;//输入要转换的10进制数
		exchange_DB(n);
	}
	return 0;
}

发布了24 篇原创文章 · 获赞 5 · 访问量 2098

猜你喜欢

转载自blog.csdn.net/weixin_43673589/article/details/104124580