数据结构实验之栈二:一般算术表达式转换成后缀式
来源:互联网 发布:mac添加dock 编辑:程序博客网 时间:2024/05/31 13:16
数据结构实验之栈二:一般算术表达式转换成后缀式
Time Limit: 1000MS Memory Limit: 65536KB
Problem Description
对于一个基于二元运算符的算术表达式,转换为对应的后缀式,并输出之。
Input
输入一个算术表达式,以‘#’字符作为结束标志。
Output
输出该表达式转换所得到的后缀式。
Example Input
a*b+(c-d/e)*f#
Example Output
ab*cde/-f*+
#include <stdio.h> #include <string.h> int yx(char c); int main() { int x=0; char a[1000],c; while(~scanf("%c",&c)&&c!='#') { if(c>='a'&&c<='z') printf("%c",c); else { if(x==0) { a[++x]=c; } else if(yx(c)>yx(a[x])) { if(yx(c)==4) { while(a[x]!='(') { printf("%c",a[x--]); } x--; } else { a[++x]=c; } } else { if(a[x]!='(') { printf("%c",a[x]); a[x]=c; } else { a[++x]=c; } } } } while(x) { printf("%c",a[x--]); } printf("\n"); return 0; } int yx(char c) { if(c=='+'||c=='-') return 1; if(c=='*'||c=='/') return 2; if(c=='(') return 3; if(c==')') return 4; return 0; }
0 0
- SDUT2132数据结构实验之栈二:一般算术表达式转换成后缀式(栈)
- 数据结构实验之栈二:一般算术表达式转换成后缀式(栈)
- 数据结构实验之栈二:一般算术表达式转换成后缀式(手写栈)
- 数据结构实验之栈二:一般算术表达式转换成后缀式(栈)
- [SDUT](2132)数据结构实验之栈二:一般算术表达式转换成后缀式 ---栈
- 数据结构实验之栈二:一般算术表达式转换成后缀式
- 数据结构实验之栈二:一般算术表达式转换成后缀式
- 数据结构实验之栈二:一般算术表达式转换成后缀式
- 数据结构实验之栈二:一般算术表达式转换成后缀式
- 数据结构实验之栈二:一般算术表达式转换成后缀式
- 数据结构实验之栈二:一般算术表达式转换成后缀式
- SDUT 2132 数据结构实验之栈二:一般算术表达式转换成后缀式
- 数据结构实验之栈二:一般算术表达式转换成后缀式
- SDUT OJ 数据结构实验之栈二:一般算术表达式转换成后缀式
- 数据结构实验之栈二:一般算术表达式转换成后缀式
- SDUT 2132 数据结构实验之栈二:一般算术表达式转换成后缀式
- 数据结构实验之栈二:一般算术表达式转换成后缀式
- 数据结构实验之栈二:一般算术表达式转换成后缀式
- git学习笔记
- PAT A1030 Travel Plan(30)
- android-Animation动画效果
- 搜索二维矩阵 II
- 学习12864 5*8
- 数据结构实验之栈二:一般算术表达式转换成后缀式
- 自述创业史 - XMove动作感应系统(二)
- Python简介
- Centos6中Python2.6升级2.7
- HDU Coins(dp)
- linux进入退出命令界面
- 大神博客地址
- 转置数组中所有元素
- Linux 操作系统常用命令