【已解决】C语言十进制转化为P进制代码模板

【已解决】C语言十进制转化为P进制代码模板,第1张

【已解决】C语言十进制转化为P进制代码模板

本博文摘抄于《算法笔记》胡凡的十进制转化为P进制代码,具体思想如下,给定一个十进制x,那么我转化为P进制,直接不断的除P取余倒着读,给出一个实例,比如十进制 12,那么转化为Q进制,假如是2

12 /2  余数 0
6 /2  余数 0
3 /2  余数 1
1 /2  余数 1

因此代码模板如下

//将十进制y转化为Q进制数Z
// 12  2
// 12 /2 0
// 6 /2  0
// 3/2  1
// 1
#include
int main()
{
    int P,x,result=0;
    scanf("%d%d",&x,&P);
    //将十进制x转化为P进制的数字
    int z[40] , num = 0;
    do{
        z[num++] = x%P; //用数组容器进行装填余数,倒着读就行
        x /= P; //不断获得除数给后面的进行运算

    }while(x!=0);
    //倒着读
    for(int i=num-1;i>=0;i--)
        printf("%d",z[i]);
    return 0;
}

如果可以,可以尝试理解这个模板。

int z[31];
//十进制的D转化为Q进制的数据
int D_Q(int D,int Q){
    int num = 0;
    do{
        z[num++] = D%Q;
        D/=Q;

    }while(D!=0);
    return num;
}

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/zaji/5702860.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2022-12-17
下一篇2022-12-17

发表评论

登录后才能评论

评论列表(0条)

    保存