设计并实现将一个中缀表达式转换成逆波兰式-然后对此逆波兰表达式求值的算法(共8页).docx
《设计并实现将一个中缀表达式转换成逆波兰式-然后对此逆波兰表达式求值的算法(共8页).docx》由会员分享,可在线阅读,更多相关《设计并实现将一个中缀表达式转换成逆波兰式-然后对此逆波兰表达式求值的算法(共8页).docx(8页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、精选优质文档-倾情为你奉上/* Note:Your choice is C IDE */#include stdio.h#include stdlib.h#include string.h#define STACK_INIT_SIZE 100/初始大小#define STACK_INCR_SIZE 10/增加大小#define OVERFLOW -2typedef char SELemType;typedef structSELemType baseSTACK_INIT_SIZE;int top;SqStack;void InitStack(SqStack *s)/初始化s-top=-1;vo
2、id Push(SqStack *s,SELemType e)/进栈if(s-top=STACK_INIT_SIZE-1)exit(OVERFLOW);elses-base+s-top=e;void Pop(SqStack *S, SELemType *e) /删除栈顶元素 if (S-top=-1) exit(OVERFLOW); else *e=S-baseS-top-;char GetTop(SqStack S) /取栈顶元素 SELemType e;if (S.top = -1) exit(OVERFLOW); else e=S.baseS.top; return e; SELemTy
3、pe Operate(SELemType a,SELemType O,SELemType b) char str10;int m=0,n=0,result,i=0,j=0,O,R;while(ai!=0)m=m*10+(ai-0);i+;while(bj!=0)n=n*10+(bj-0);j+;O=+;switch(O)case +:result=m+n;break;case -:result=m-n;break;case *:result=m*n;break;case /:result=m/n;break;R=result;i=0;doresult=result/10;i+;while(re
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 设计 实现 一个 中缀 表达式 转换 波兰 然后 对此 求值 算法
限制150内