第一范文网 - 专业文章范例文档资料分享平台

数据结构_实验三_栈和队列及其应用

来源:用户分享 时间:2025/5/24 12:18:50 本文由loading 分享 下载这篇文档手机版
说明:文章内容仅供预览,部分内容可能不全,需要完整文档或者需要复制内容,请下载word后使用。下载word有问题请添加微信号:xxxxxxx或QQ:xxxxxx 处理(尽可能给您提供完整文档),感谢您的支持与谅解。

}

S->next=p; return OK;

Status Pop(LinkStack &S,SElemType &e){ }

SElemType GetTop(LinkStack &S){ }

SElemType EvaluateExpression(){

//表达式求值

LinkStack OPTR,OPND; char a,b,c,x,thate;

char OP[10]={'0','1','2','3','4','5','6','7','8','9'}; InitStack(OPTR); Push(OPTR,'#'); InitStack(OPND); c=getchar();

while(c!='#'||GetTop(OPTR)!='#'){

if(!In(c,OP)){

Push(OPND,c); c=getchar();}

//得到顶部数据 return S->next->data; //出栈 SqStack *p;

if(S->next==NULL) return ERROR; p=S->next; e=p->data; S->next=p->next; return OK;

else{

}

}

}

switch (Precede(GetTop(OPTR),c)){ case '<':

Push(OPTR,c); c=getchar(); break;

case '=':

Pop(OPTR,x); c=getchar(); break;

case '>': }

Pop(OPTR,thate); Pop(OPND,b); Pop(OPND,a);

Push(OPND,Operate(a,thate,b)); break;

return GetTop(OPND);

Status In(char c,char *OP){ }

SElemType Precede(char x,char y){

//判断优先关系 int i,j;

//判断C就是否就是数 for (int i=0;i<10;i++){ } return OK;

if (OP[i]==c)return ERROR;

}

char a[7] = {'+','-','*','/','(',')','#'};//运算符 char b[7][7]={'>','>','<','<','<','>','>',

'>','>','<','<','<','>','>', '>','>','>','>','<','>','>',

'>','>','>','>','<','>','>', '<','<','<','<','<','=',' ', '>','>','>','>',' ','>','>',

'<','<','<','<','<',' ','='};//优先关系表

for( i=0;i<7;i++){ }

for( j=0;j<7;j++){ }

return b[i][j];

if(a[j]==y){break;} if(a[i]==x){break;}

SElemType Operate(char x,char thate,char y){

//运算返回结果

char a[4]={'+','-','*','/'};//运算符 int i,j,k; for(i=0;i<4;i++){ } x-=48; y-=48; switch (i){

case 0:return x+y+48; case 1:return x-y+48; case 2:return x*y+48; case 3:return x/y+48;

if(a[i]==thate)break;

}

}

return ERROR;

//main、cpp

#include\、h\int main(){ }

cout<<\请输入十以内得表达式(以‘#’号结束)\

cout<<\该表达式得值就是:\return 0;

? 运行结果:

五.实验结果得分析与评价(该部分如不够填写,请另加附页)

1. 栈先入后出,利用这一特性可以解决很多问题,但就是也有很多弊端

2. 表达式求值比较麻烦涉及到得知识有点多,函数也比较复杂、不过用工程将文件分

类后还就是清晰简单了些、也方便修改、

注:实验成绩等级分为(90-100分)优,(80-89分)良,(70-79分)中,(60-69分)及格,(59分)不及格。

搜索更多关于: 数据结构_实验三_栈和队列及其应用 的文档
数据结构_实验三_栈和队列及其应用.doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印
本文链接:https://www.diyifanwen.net/c1foa9704kc9sc9l3ppnv1xep036fj70199z_8.html(转载请注明文章来源)
热门推荐
Copyright © 2012-2023 第一范文网 版权所有 免责声明 | 联系我们
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ:xxxxxx 邮箱:xxxxxx@qq.com
渝ICP备2023013149号
Top