C语言用栈实现进制转换#include<>#include<>#include<>#include<>#defineS_SIZE100//栈所占空间的大小#defineSTACKINCREAMENT10//扩充空间时一次扩充十个字节structSqStack{ int*base;//栈底 int*top;//栈顶 intstacksize;//栈当前的存储空间}*S;//主函数开始voidmain(){ //子函数声明 voidInitStack(S);//初始化空栈 intStackEmpty(SqStackS);//判栈空 voidGetTop(SqStackS,int&e);//获得栈顶元素 voidpush(SqStack&S,inte);//进栈 voidpop(SqStack&S,int&e);//出栈 voidconvert(SqStack&5,intN,intn);//十进制转N进制 inti,num; unsignedn,N;//要转换的进制数及要转换的数 SqStacks; InitStack(s);//初始化空栈 printf("输入要转换的十进制数和要转换为的进制数:\n"); scanf("%d,%d",&N,&n); printf("%d转换为%d进制后为:\n",N,n); convert(s,N,n);}voidInitStack(SqStack&S){ =(int*)malloc(S_SIZE*sizeof(int)); =S_Size; =;//初始化空栈}intStackEmpty(SqStackS){ if(==) return1; else return0;}voidGetTop(StackS,int&e){ //获得栈顶元素 e=*(-1);}voidpush(SqStack&5,inte){ //进栈 if(->=) { =(int*)realloc(,(
C语言 用栈实现进制转换 来自淘豆网m.daumloan.com转载请标明出处.