代码积累: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("");
}


全部评论

相关推荐

05-14 20:34
门头沟学院 Java
窝补药贝八股:管他们,乱说,反正又不去,直接说680
点赞 评论 收藏
分享
评论
1
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务