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

//只能转换单个数字

#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;
}

阅读更多
文章标签: rest c
个人分类: C/C++
想对作者说点什么? 我来说一句

没有更多推荐了,返回首页

不良信息举报

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

最多只允许输入30个字

加入CSDN,享受更精准的内容推荐,与500万程序员共同成长!
关闭
关闭