第6周项目4--数制转换

问题及代码:

    /*       
    Copyright (c)2015,烟台大学计算机与控制工程学院       
    All rights reserved.       
    文件名称:第6周项目4--数制转换.cpp       
    作    者:魏永恒       
    完成日期:2015年10月23日       
    版 本 号:v1.0           
    问题描述:把十进制的整数转换为二至九之间的任一进制数输出。请利用栈设计算法,并实现程序。  
    输入描述:若干数据。 
    程序输出:对应进制数的输出。 
    */  

链栈算法库

进制变换实现函数:

 void MultiBaseOutput (int number,int base)  
    {  
        //假设number是非负的十进制整数,输出等值的base进制数  
        int i;  
        LiStack *S;  
        InitStack(S);  
        while(number)   //从右向左产生base进制的各位数字,并将其进栈  
        {  
            Push(S,number%base); //将将余数进栈  
            number/=base;  
        }  
        while(!StackEmpty(S))   //栈非空时退栈输出  
        {  
            Pop(S, i);  
            printf("%d",i);  
        }  
    }    
main函数:

	    int main()  
    {  
        MultiBaseOutput(10, 2);  
        return 0;  
    }  
运行结果:

第6周项目4--数制转换_第1张图片

知识点总结:

链栈的应用。

你可能感兴趣的:(第6周项目4--数制转换)