栈的当用之数制转换

栈的应用之数制转换

( 未完:有空把这个用java实现,今天先写上精华部分)
十进制数N和其他d进制数的转换是计算机实现的基本问题,这一次我就举例说明从十进制转化为八进制的代码,在其中就用到了栈。
例如:(1348)d = (2504)o;
说明:d为十进制,o为八进制
其运算过程为:
N N div 8 N mod 8
1348 168 4
168 21 0
21 2 5
2 0 2

void conversion(){
    InitStack(S);
    scanf("%d",N);
    while(N){
        Push(S,e);
        N = N/8;
    }
    while(!StackEmpty(s)){
        Pop(S,e);
        printf("%d",e);
    }
}//conversion