假设表达式由单字母变量和双目四则运算算符构成.写一算法,将以正确的式子转换为逆波兰式
题目
假设表达式由单字母变量和双目四则运算算符构成.写一算法,将以正确的式子转换为逆波兰式
答案
char *RPExpression(char *e)
/* 返回表达式e的逆波兰式 */
{
char m='0';
char *b;
Stack s;
static char a[100];
b=a;
InitStack(s);
Push(s,m);
if(*e)
{
while(*e)
{
switch(*e)
{
case '(' :
{
Push(s,*e);
break;
}
case '+' :
case '-' :
{
m=Top(s);
if(m=='+'||m=='-')
{
Pop(s,m);
*b++=m;
}
else if(m=='*'||m=='/')
{
Pop(s,m);
while(m!='('&&m!='0')
{
*b++=m;
Pop(s,m);
}
[u] if(m=='('||m=='0')
Push(s,m); [/u]
}
Push(s,*e);
break;
}
case '*' :
case '/' :
{
m=Top(s);
if(m=='('||m=='+'||m=='-'||m=='0')
{
Push(s,*e);
}
else if(m=='*'||m=='/')
{
Pop(s,m);
*b++=m;
if(m=='('||m=='0')
Push(s,m);
Push(s,*e);
}
break;
}
case ')' :
{
Pop(s,m);
while(m!='(')
{
*b++=m;
Pop(s,m);
}
break;
}
default :
{
*b++=*e;
break;
}
}
e++;
}
Pop(s,m);
while(m!='0')
{
*b++=m;
Pop(s,m);
}
*b='\0';
b=a;
return b;
}
}
举一反三
已知函数f(x)=x,g(x)=alnx,a∈R.若曲线y=f(x)与曲线y=g(x)相交,且在交点处有相同的切线,求a的值和该切线方程.
我想写一篇关于奥巴马的演讲的文章,写哪一篇好呢?为什么好
最新试题
- [英译汉] One idea is to get more money to banks across the continent.
- 求解lim(n趋向于正无穷)(1+a+a^2+…+a^n)/(1+b+b^2+…+b^n)
- 情景交际.根据对话内容和上下文,在空白处填上适当的短语或句子,补全对话,使对话意思完整A:Excuse me,May I ask you some questions?
- ,Stephen Hawking的人物简介、不少于120字的英语作文
- 已知命题p:x1和x2是方程x^2-mx-2=0的两个根,不等式a^2-5a-3≥/x1-x2/对任意实数m∈[-1,1]恒成立,若为真命题,求a的取值范围
- 化简【1+【 A的平方-4分之4】】除以A-2分之A
- 判断题:社会主义道德的基本原则是集体主义原则.()
- 一个梯形的下底是上底的3倍,如果上底延长6厘米,就成了一个平行四边形,这个梯形的上底和下底各是多少厘米
- 相同浓度的CH3COOH和ch3coona溶液等体积混合后,物料守恒怎么分析
- 矢量比大小要代符号吗?
热门考点
- 解方程:7分之6除7分之2X=10分之3.快
- per是什么意思
- Dont worry and cry I dont want to see the tears with from your eyes
- 图我没法发,可以看看网上有这题,请高手给我个解析.长度都为L的两金属棒C,D两端分别连接两根轻质的细软导线,悬挂在水平固定光滑绝缘的圆柱体两侧,空间存在两个边界水平,上下高度都为d的两个匀强磁场区域Ⅰ
- 我想练习英语发音和口语,请问有没有什么书可以推荐,词汇量在专四水平,中英文对照有讲解最好,
- 一块棉花地去年收皮棉30吨比前年增产5吨这块棉花地皮棉产量增长了几成
- 初一写景作文400字左右,
- 语文,文天祥的《过零丁洋》预习,请写出夲诗的写作背景.
- 2(x+x+0.5)=9.
- 高二生物学必修几