进制转换

自己写的  递归  但是不支持负进制数

void chang(int x,int k)
{
    int t=x%k;
    if(x/k)
    {
        chang(x/k,k);
    }
    printf("%d",t);
}

支持负进制数

void chang1(int x,int k)//x为内容  k为进制数
{
    vector<int>ans;
    while(x!=0)
    {
        int t=x%k;
        x/=k;//位置一定要是在判定的上面
        if(t<0)
        {
            t-=k;
            x++;
        }
        ans.push_back(t);
    }
    for(int i=ans.size()-1;i>=0;i--)
        cout<<ans[i];
}
原文地址:https://www.cnblogs.com/bxd123/p/10458889.html