1+3*4+5用栈的知识来编写程序

来源:百度知道 编辑:UC知道 时间:2024/05/16 17:22:37
要把它用两处栈来解,一个放运算符,一个放数字,请大哥大姐指点一下,这是老师布置的课外题相关的知识都没教,只教了栈,都不会啊

以前学数据结构时候写的,希望对你有帮助

#include<iostream>
#include<stack>
using namespace std;

int operate(int a,int c,int b)
{
int num;
switch(c)
{
case 0:num=a+b;break;
case 1:num=a-b;break;
case 2:num=a*b;break;
case 3:num=a/b;break;
}
return num;
}

int fun(char n)
{
int i;
switch(n)
{
case '=':i=6;break;
case ')':i=5;break;
case '(':i=4;break;
case '/':i=3;break;
case '*':i=2;break;
case '-':i=1;break;
case '+':i=0;break;
default:i=7;
}
return i;
}

int num(char n)
{
int i;
switch(n)
{