这利用栈实现四则运算,带负数,带括号,带小数,自己写的有问题大家纠正。
#include <stdio.h>
#include <stdlib.h>
#include <math.h>
typedef struct SNode PtrToSNode;
struct SNode {
char data[1001]; / 存储元素的数组 /
int top; / 栈顶指针 /
};
typedef PtrToSNode list;
typedef struct Node PtrToSNode2;
struct Node {
double data[1001]; / 存储元素的数组 /
int top; / 栈顶指针 /
};
typedef PtrToSNode2 list2;
void push(list s,char c){
s->data[++s->top]=c;
}
void push2(list2 s,double x){
s->data[++s->top]=x;
}
char pop(list s){
return s->data[s->top–];
}
double pop2(list2 s){
return s->data[s->top–];
}
double yun(char s){
double l;