C语言表达式计算器
为了方便了解流程,在程序中把计算过程也输出了.而且栈操作的实现部分也是自己实现的.`/K$C'Z Q0C%R程序用两个栈,optr寄存运算符,opnd寄存操作数和运算结果.输入的表达式以等号结束,例如:2*(1+2)=}C&uDe J
/**************表达式计算器************/
#include <stdio.h>y jf_+{t
#include <stdlib.h>s\J_F V2Y HopF
#include <string.h>
#include <conio.h>
#include <malloc.h>
(xbpu.T'PR
#define STACK_SIZE 100
#define APPEND_SIZE 10
L;{?o3D&p`
struct SNode{
float data; /*存放操作数或者计算结果*/)et:D s"lZ5s
char ch; /*存放运算符*/
};s.P#^1@-^*{F
struct Stack{g-p0hpE.SC
SNode *top;
SNode *base;
int size;
};FCf'Hf
/*栈操作函数*/
int InitStack(Stack &S); /*创建栈*/,c$\9^(V Pp
int DestroyStack(Stack &S); /*销毁栈*/