求一个C语言算术表达式求值程序

来源:百度知道 编辑:UC知道 时间:2024/09/24 01:51:39
要能运行的,算术表达式比如3*(6-2)/4
是任意输入表达式,那个只是个比方,谢谢 快啊 我急,能运行的程序在追加200分
4楼的17行有错啊,快调试哈340就是你的了
5楼的也运行不出来,郁闷
快啊,在线等答案,能运行的我410分全给他了
6楼的除法有问题啊,+ - *还可以 6楼的我也能运行,但除法有问题,3*10/5就不行

我的能运行!!但表达式末尾加要加#
例如2+3要打2+3#
#include<cstdio>
#include<malloc.h>
#define NULL 0
typedef struct node{
char date;
struct node *next;
}SNode;

SNode *InitStack(){
SNode *top;
top=(SNode *)malloc(sizeof(SNode));
top->next=NULL;
return top;
}
void PushOptr(SNode *top,char x){
SNode *p;
p=(SNode *)malloc(sizeof(SNode));
p->date=x;
p->next=top->next;
top->next=p;

}
char PopOptr(SNode *top){
SNode *p;
char x;
if(top==NULL)
return NULL;
p=top->next;
x=p->date;
top->next=p->next;
free(p);
return x;
}
void PushOpnd(SNode *top,char x){
SNode *p;
p=(SNode *)malloc(sizeof(SNode));
p->date=x;
p->next=top->next;
top->next=p;
}
char PopOpnd(SNode *top){
SN