main.cpp

来自「多进制输出。输入一个非负的10进制数和一个相应的数字」· C++ 代码 · 共 41 行

CPP
41
字号
#include <iostream>
#include "bstack.h"
#include<string>
using namespace std;
string multibaseOutput(int num,int b);
int main()
{
	int num,b;
	cout<<"Enter a non-negative decimal number and base"
		<<"(2<=B<=16)"<<endl<<"or 0 0 to terminate:";
	cin>>num>>b;
	while(b!=0)
	{
		cout<<" "<<num<<" base "<<b<<"is "
			<<multibaseOutput( num, b)<<endl;
		cout<<"Enter a non-negative decimal number and base"
		<<"(2<=B<=16)"<<endl<<"or 0 0 to terminate:";
		cin>>num>>b;
	}
	return 0;
}

string multibaseOutput(int num,int b)
{
	string digitChar="0123456789ABCDEF",numStr="";
	bstack<char> stk;
	do
	{
      stk.push(digitChar[num%b]);
	  num/=b;
	}while(num!=0);
	while(!stk.empty())
	{
		numStr+=stk.top();
		stk.pop();
	}
     return numStr;
}
	
  

⌨️ 快捷键说明

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