《优先矩阵求算术表达式(c编程).doc》由会员分享,可在线阅读,更多相关《优先矩阵求算术表达式(c编程).doc(5页珍藏版)》请在金锄头文库上搜索。
1、#include #include #define MaxSize 100#define MaxOp 7typedef structchar dataMaxSize;/存放运算符int top;/栈指针 zhifu;/定义运算符栈typedef structfloat dataMaxSize;int top;num;int InOp(char ch) /判断ch是否为运算符if (ch=( | ch=) | ch=+ | ch=- | ch=* | ch=/|ch=)return 1;elsereturn 0;char Precede(char c1,char c2) int i=0,j=0;
2、 static char array49= , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , !, , , , , , , =0 & *exp=9) /判定为数字d=10*d+*exp-0;exp+;st.top+;st.datast.top=d;else/为运算符的情况switch(Precede(op.dataop.top,*exp) case : /退栈并输出到postexp中compvalue(op,st);op.top-;break; printf(%fn,st.datast.top);void main()char exp=(56-20)/6-8+9=;trans(exp);