***转化为十进制及以下进制,只需要一直取余,保存余数,然后倒序输出保存数据的数组即可
***关键在于当转化为十进制以上进制时,需要加入一个判断条件,来输出对应的字母
下边是更新的两种其他思路的写法
https://blog.csdn.net/qq_62354828/article/details/121593366
【借助字符数组转换的新思路】C++将一个十进制整数转化为十六进制及以下的任意进制的数_V连殳的博客-CSDN博客
#include <iostream>
using namespace std;
void printint(int n,int base);
int main()
{
int n=0,base=0;
cout<<"please input n,base:";
cin>>n>>base;
printint(n,base);
}
void printint (int n,int base)
{ int i=0,arr[100];
while(n!=0)
{
arr[i] = n % base;
n = n / base;
i++;
}
while(i>0)
{
i--;
if(arr[i]>9)
cout<<(char)(arr[i]+55);
else
cout << arr[i];
}
}