读书人

进制 其间的转换:如 将10进制转换为2

发布时间: 2012-07-29 15:26:14 作者: rapoo

进制 之间的转换:如 将10进制转换为2进制,10进制数n和要转换的进制d通过键盘输入。
进制 之间的转换:如 将10进制转换为2进制,10进制数n和要转换的进制d通过键盘输入。 利用栈和队列

[解决办法]

C/C++ code
#include <iostream>using namespace std;static char* itoa(long n, int base){    register char *p;    register int minus;    static char buf[36];    p = &buf[36];    *--p = '\0';    if (n < 0)    {        minus = 1;        n = -n;    }    else        minus = 0;    if (n == 0)        *--p = '0';    else    {        while (n > 0)        {            *--p = "0123456789abcdef"[n % base];            n /= base;        }    }    if (minus)        *--p = '-';    return p;}int main(){    cout << itoa(21, 2) << endl;    cout << itoa(21, 8) << endl;    cout << itoa(21, 16) << endl;    return 0;}
[解决办法]
void conversion (int N, int B)
{
int i;
SeqStack *S;

Initial (&S);
while (N)
{
Push (S, N % B);
N = N / B;
}

while (!IsEmpty (S))
{
i = Pop (S);
printf ("%d", i);
}

}剩下的自己补全吧。。。。。

读书人网 >C语言

热点推荐