代码积累:10进制转任意进制

代码积累之——10进制转任意进制
输入
10 2
输出
1010
int print(int x) {
    if (x <= 9)
        printf("%d", x);   //小于十的数都按阿拉伯数字打印
    else
        printf("%c", x - 10 + 'A'); //大于十的数按照24个字母顺序打印(一个数字+上一个字符可以打印该字符往后多少位);
}
int change(int n, int x) {
    if (n) {
        change(n / x, x);   //递归实现除以权重
        print(n % x);       //倒序打印
    }
}
int main() {
    int n, x;
    scanf("%d %d", &n, &x);
    change(n, x);
    puts("");
}


全部评论

相关推荐

牛客868257804号:九个中铁八个中建
点赞 评论 收藏
分享
勤奋努力的椰子这就开摆:美团骑手在美团工作没毛病
投递美团等公司10个岗位
点赞 评论 收藏
分享
1 收藏 评论
分享
牛客网
牛客企业服务