#include <stdio.h>
#include <conio.h>
#include <stdlib.h>
#include <string.h>
#define N 100
double numStack[N]={0};//操作数栈
int numTop;
char opStack[N];//运算符栈
int opTop;
void print_num(double str1[],int n)
{
int i;
printf("\n操作数栈:\n");
for(i=0;i<n;i++)
printf("%g ",str1[i]);
}
void print_op(char str2[],int m)
{
int j;
printf("\n运算符栈:\n");
for(j=0;j<m;j++)
printf("%c ",str2[j]);
}
int op(char ch)//判断运算符优先级
{
if(ch=='+'||ch=='-') return 2;
if(ch=='*'||ch=='/') return 3;
if(ch=='(') return -1;
return 0;
}
double result(double num1,char op,double num2)//计算
{
if(op=='+') return num1+num2;
if(op=='-') return num1-num2;
if(op=='*') return num1*num2;
if(op=='/') return num1/num2;
return 0;
}
int compute(char str[])
{
double num=0;
int i=0,j=1,k=1;
numTop=opTop=0;
while(str[i]!='\0'||opTop>0)
{
if(str[i]>='0'&&str[i]<='9')
num=num*10+str[i]-'0';