• 大小: 8KB
    文件类型: .c
    金币: 1
    下载: 0 次
    发布日期: 2021-01-05
  • 语言: C/C++
  • 标签: 堆栈  计算器  c语言  

资源简介

堆栈 计算器 c语言写主要思想是对每个输入的字符进行检测和分类,分成数字堆栈和符号堆栈然后判断符号优先级。 统一先处理乘号和除号,(如果有括号先处理括号,将括号内的运算处理完) 然后最后会出现优先级低的运算符加号 减号还没有运算完,字符串就结束了。

资源截图

代码片段和文件信息

#include 
#include 
#include 
#define MAXSIZE 50
//定义一个顺序存储栈
typedef struct
{
    int data[MAXSIZE];
    int top;
}SqStack;


/*******************栈的基本操作********************************/
int init_stack(SqStack *s)
{
    s->top = -1;
    return 1;
}

int clear_stack(SqStack *s)//清空 
{
    s->top = -1;
    return 1;
}

int stack_empty(SqStack s)//判断 
{
    if (s.top == -1)
        return 1;
    else
        return 0;
}

int stack_length(SqStack *s)//长度 
{
    return s->top + 1;
}

int push(SqStack *s int e)//入 
{
// printf(“%c\n“e);
    if (s->top == MAXSIZE - 1)
        return 0;
    s->top++;
    s->data[s->top] = e;
    return 1;
}

int pop(SqStack *s int ee)//出 
{
int f;
    if (s->top == -1)
        retu

评论

共有 条评论