c++的进制转换

 

#include<iostream>
using namespace std;
int main()
{
	int n;
	cout<<"请输入待转换的十进制数:";
	cin>>n;
	int number[100];//进制转换;
	int m,j,trans;
	for(int i=0;i<=2;i++)//依次做2,8,16进制的转换; 
	{
		j=0;m=n;
		if(i==0) trans=2;
		if(i==1) trans=8;
		if(i==2) trans=16;
		while(m!=0)
		{
			number[j++]=m%trans;//根据算法可以知道; 
			m=m/trans;
		}
		cout<<"转换为"<<trans<<"进制,"<<n<<"是:"; 
		j--;
		while(j>=0)
		{
			char ch;
			if(number[j]>=0&&number[j]<=9)//针对2进制和8进制; 
			ch=number[j]+'0';//加'0'是怕出现代码混乱; 
			else
			ch=number[j]-10+'A';//16进制; 
			cout<<ch;
			j--;
		}
		cout<<endl;
	 } 
	 return 0;
	
}

c++的进制转换