• 13.00 KB
  • 2页

顺序栈的应用(十进制转换为八进制-通过VC++调试运行).doc

  • 2页
  • 当前文档由用户上传发布,收益归属用户
  1. 1、本文档共5页,可阅读全部内容。
  2. 2、本文档内容版权归属内容提供方,所产生的收益全部归内容提供方所有。如果您对本文有版权争议,可选择认领,认领后既往收益都归您。
  3. 3、本文档由用户上传,本站不保证质量和数量令人满意,可能有诸多瑕疵,付费之前,请仔细先通过免费阅读内容等途径辨别内容交易风险。如存在严重挂羊头卖狗肉之情形,可联系本站下载客服投诉处理。
  4. 文档侵权举报电话:19940600175。
//十进制转换为八进制.cpp:Definestheentrypointfortheconsoleapplication.#include"iostream"#include"stdlib.h"#include"stdio.h"usingnamespacestd;#defineStack_Init_Size100#defineSTACKINCREMENT10#defineoverflow-2#defineERROR0#defineOK1typedefstruct{int*base;int*top;intstacksize;}SqStack;typedefintStatus;StatusInitStack(SqStack&S){S.base=(int*)malloc(Stack_Init_Size*sizeof(int));if(!S.base)exit(overflow);S.top=S.base;S.stacksize=Stack_Init_Size;returnOK;}StatusPush(SqStack&S,inte){if(S.top-S.base>=S.stacksize){S.base=(int*)realloc(S.base,(S.stacksize+STACKINCREMENT)*sizeof(int));if(!S.base)exit(overflow);S.top=S.base+S.stacksize;S.stacksize+=STACKINCREMENT;}*S.top++=e;returnOK;}StatusPop(SqStack&S,int&e){if(S.top==S.base)returnERROR;e=*--S.top;returnOK;}boolStackEmpty(SqStackS){if(S.base==S.top)return1;else return0;}intmain(){intl;SqStacks;intN;InitStack(s);cout<<"请输入一个十进制数:";cin>>N;while(N){Push(s,N%8);N=N/8;}cout<<"其化为八进制数为:";while(!StackEmpty(s)){Pop(s,l);cout<