十进制转换为其他进制

题目描述

将一个十进制数 a 转换成任意B进制数 ,进制小于16.(采用递归实现)

输入格式

一行两个数,分别表示a,B.

输出格式

一个B进制数

输入样例 

  31 16

输出样例 

  1F

#include<iostream>
#include<cstring>
using namespace std;
char a[1000000];
char c[17]={'0','1','2','3','4','5','6','7','8','9','A','B','C','D','E','F'};

void count(int n, int i){
    if(n==0){ // 递归边界条件 
        return;
    }
    int index = n%i; // 剥离每位数字 
    count(n/i,i); // i表示进制数,不能加1. 
    cout<<c[index];
}

int main(){
    int n, b;
    // n:十进制数;b:进制。 
    cin>>n>>b; 
    count(n,b);
    return 0;
}

 

posted @ 2022-08-20 16:47  Hi,小董先生  阅读(154)  评论(0)    收藏  举报