我有一个将给定字符串从前缀转换为后缀的项目,因此我计划先将给定前缀转换为后缀表达式,然后再将其转换为后缀表达式。
到目前为止,我仅成功将其转换为infix。 这是唯一的方法,还是有办法直接将给定的字符串从前缀转换为后缀而不转换为中缀? 请帮助
void pre_in()
{
int n,i;
char a,b,op;
char y[20];
printf("Enter the prefix expression\n");
fflush(stdin);
gets(str);
n=strlen(str);
for(i=0;i<MAX;i++)
stack[i]='\0';
printf("Infix expression is:\t");
for(i=0;i<n;i++)
{
if(str[i]=='+'||str[i]=='-'||str[i]=='*'||str[i]=='/')
{
push(str[i]);
}
else
{
op=pop();
a=str[i];
printf("%c%c",a,op);
}
}
printf("%c\n",str[top--]);
}