十进制转换成二进制、八进制以及十六进制的代码 就是合在一起,不分开写的那种

提问:十进制转换成二进制、八进制以及十六进制的代码 就是合在一起,不分开写的那种

网友回答:

你要用什么语言?以下是我用于C++ OJ的一个函数(OJ过多个题目),它可以将一个十进制转化为2~33内任意进制

void m_itoa( char *buf, int i, unsigned char base) {    unsigned int rem;    unsigned char *s, length = 0;    s = ( unsigned char *)buf;    if(i == 0)        *s++ = '0';    else    {        if(i < 0)        {            if(base <= 10)            {                *buf++ = '-';                s =( unsigned char *) buf;            }            i = -i;        }        while(i)        {            ++length;            rem = i % base;            if(rem <= 10)                *s++ = rem + '0';            else if(base <= 36)                *s++ =  rem - 10 + 'A';            i /= base;        }        for(base = 0; base < length / 2; base++)        {            *(buf + length) = *(buf + base);            *(buf + base) = *(buf + (length - base - 1));            *(buf + (length - base - 1)) = *(buf + length);        }    }    *s = 0; }

使用

 char s[33];    int n,b;    cin >> n >> b;    m_itoa(s,n,b);    cout << s << endl;    return 0;

可以将一个数,转为任何进制

如 

m_itoa(s,1234,2); //将1234转为二进制

m_itoa(s,1234,8); //将1234转为八进制

m_itoa(s,1234,16); //将1234转为十六进制

相关推荐

将十进制数75转换成二进制、八进制和十六进制数

将十进制数75转换成二进制、八进制和十六进制数

十进制-12.15转化成float(32b)结果是多少?

十进制-12.15转化成float(32b)结果是多少?

十进制1000转化十六进制 算法过程

问题补充:计算过程写一写。截图的也行。 最佳回答:首先要知道十六进制数字分别用“0,1,2,3,4,5,6,7,8,9,A,B,C,D,E,F”来表示。一个十六进制数从右往左:右边第一位数字代表“1”,右边第二位数字

与十进制数291等值的十六进制数为

与十进制数291等值的十六进制数为

用二-十进制译码器附加门电路能否得到任何形式的四变量楼及函数?为什么?

用二-十进制译码器附加门电路能否得到任何形式的四变量楼及函数?为什么?

我不太懂十进制转二进制的余数。

我不太懂十进制转二进制的余数。

二进制位11110011转换为十进制数是多少

二进制位11110011转换为十进制数是多少

格式化输出389的二进制,八进制,十进制,十六进制的表达形式,以及对应的Unicode字符

格式化输出389的二进制,八进制,十进制,十六进制的表达形式,以及对应的Unicode字符

emu8086在内存数据段中存储一个四位数,并在显示屏上以十进制的形式显示它

emu8086在内存数据段中存储一个四位数,并在显示屏上以十进制的形式显示它

盒子游戏,游戏玩家专属个性阅读社区


©CopyRight 2010- 2020 BOXUU.COM Inc All Rights Reserved

鄂公网安备 35020302000061号- 鄂ICP备2020015574号-1