C++语言应该怎么做比较好

输入十进制整数N和待转换的进制x(2、8、16),分别代表十进制N转换成二进制、八进制和十六进制,输出对应的结果。十六进制中A~F用大写字母表示。

输入格式:
输入两个整数N(十进制整数N)和x(x进制),中间用空格隔开。

输出格式:
输出对应的结果。

这个都能找到现成的代码,百度厉害的
参考:https://www.cnblogs.com/duye/p/9541128.html


    int N,x;
    scanf_s("%d %d", &N,&x);
    switch(x){
    case(2) : {
        char s[16];
        _itoa_s(N, s, 2);
        printf_s("二进制:%s\n", s); break;
    }
    case(8) : printf_s("八进制:%o\n", N); break;
    case(16) : printf_s("十六进制:%x\n", N); break;
        default:break;
    }
#include <stdio.h>
int main() {
    int n,x;
    int t,len=0;
    char re[64]={0};
    scanf("%d%d",&n,&x);
    while(n>0)
    {
        t=n%x;
        if(t>9)
            re[len]=t-10+'A';
        else
            re[len]=t+'0';
        n/=x;
        len++;
    }
    len--;
    for(int i=0;i<=len/2;i++)
    {
        t=re[i];
        re[i]=re[len-i];
        re[len-i]=t;
    }
    printf("%s\n",re);
    
    return 0;
}