中缀表达式换成后缀表达式

原创 2005年05月23日 23:55:00

//只能转换单个数字

#include<stdio.h>
#include<ctype.h>
#include<stdlib.h>
int lookahead;


void error()
{
 printf("syntax error/n");
 exit(1);
}

void match(int c)
{
 if(lookahead==c)
  lookahead=getchar();
 else error();
}

void texm()
{
 if(isdigit(lookahead) )
 {
  putchar(lookahead);
  match(lookahead);
 }
 else error();
}
void rest()
{
 if(lookahead=='+')
 {
  match('+');texm();putchar('+');rest();
 }
 else if(lookahead=='-')
 {
  match('-');texm();putchar('-');rest();
 }
 else exit(1);
}


void expr()
{
 texm();
 rest();
}

int main()
{
 lookahead=getchar();
 expr();
 return 0;
}

利用栈将中缀表达式转换成后缀表达式

目的:将中缀表达式(即标准形式的表达式)转换为后缀式。 例子:a+b*c+(d*e+f)*g转换成abc*+de*f+g*+   转换原则: 1.当读到一个操作数时,立即将它放...

中缀表达式转换成后缀表达式

  • 2011年10月15日 14:22
  • 15KB
  • 下载

利用栈将中缀表达式转换成后缀表达式

目的:将中缀表达式(即标准形式的表达式)转换为后缀式。 例子:a+b*c+(d*e+f)*g转换成abc*+de*f+g*+   转换原则: 1.当读到一个操作数时,立即将它放到输出中...
  • cozzw
  • cozzw
  • 2012年10月11日 17:18
  • 146

前缀、中缀、后缀表达式

  • 2015年06月23日 16:28
  • 6KB
  • 下载

逆波兰式(中缀表达式转成后缀表达式)

将中缀表达式:9+(3-1)*3+10/2  转成逆波兰式:931-3*+102/+

java中缀变后缀表达式

  • 2007年08月10日 15:44
  • 1KB
  • 下载
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:中缀表达式换成后缀表达式
举报原因:
原因补充:

(最多只允许输入30个字)