- 1、本文档共5页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
数据结构算法中缀表达式转化为后缀表达式.
题目:中缀表达式转化为后缀表达式算法及其后缀表达式计算算法的实现。
内容:掌握栈的存储结构的C语言描述。
掌握中缀表达式和后缀表达式的存储结构。
掌握后缀表达式算法的实现。
流程图:
Y
N
Y N
calcolate():依次扫描string2中的字符,遇到数字则将其转化为整型数据存入栈中,遇运算符则将栈中栈顶的两个元素取出参与运算,并将计算结果放入栈中,如此直到运算符全部用完,最后一次运算结果即为后缀表达式的计算结果。
程序代码:
#includestdio.h
#includemalloc.h
#includestring.h
#includestdlib.h
#define MAX 60
#define DEMAX 15
#define NULL 0
char string1[MAX];
char string2[MAX];
int j=0;
struct node
{
char data;
int num;
struct node *next;
};
struct node *Initialization()//初始化栈链,链栈不带头结点
{
struct node *top;
top=(struct node *)malloc(sizeof(struct node));
top-data=@;
top-num=0;
top-next=NULL;
return top;
}
struct node *assort(struct node *s)//输入字符串
{
struct node *p,*top;
int i;
top=s;
int m;
char a;
gets(string1);
m=strlen(string1);
for(i=0;i=m;i++)
{
a=string1[i];
if(0=string1[i]string1[i]=9)
{
string2[j]=string1[i];j++;
}
else
{
switch(a)
{
case (:{
p=(struct node *)malloc(sizeof(struct node));
p-data=a;p-next=top;
top=p;
break;
}
case *:
case /:
string2[j]= ;j++;
if((top-data==*)||(top-data==/))
{
string2[j]=top-data;j++; //比其高,现将栈顶运算符出栈,再进栈。
top-data=a;
break;
}
else
{
p=(struct node *)malloc(sizeof(struct node));//否,直接进栈
p-data=a;p-next=top;
top=p;
break;
}
case +:
case -:{
string2[j]= ;j++;
if(top-data==+||top-data==-||top-data==*||top-data==/)
{
string2[j]=top-data;j++;;
top-data=a;
break;
}
else
{
p=(struct node *)malloc(sizeof(struct node));
p-data=a;p-next=top;
top=p;
break;
}
}
case ):{
string2[j]= ;j++;
if(top-data==@){printf(input error);break;}
while(top-data!=()
{
string2[j]=top-data;j++;
p=top;
top=top-next;
free(p);
}
p=top;top=top-next;fr
您可能关注的文档
- 数学解决资金管理的方法..doc
- 数学课堂教学改革的主旋律..doc
- 数学竞赛中的组合数论问题..doc
- 数学软件Matlab实验报告..doc
- 数学运算的规律和例题解析..doc
- 数学选修2-1《圆锥曲线与方程》复习训练题(含详细答案)..doc
- 数学运算国考真题注解..doc
- 数学阅卷老师的建议..doc
- 数学高考压轴题的特征及应对策略..doc
- 数学思维训练教程(小升初)..doc
- 2025年危险化学品经营单位-安全管理人员考试历年高频考点试题专家甄选版带答案_3.docx
- 火灾调查复习测试有答案.docx
- 绿色转型,共赢未来-推进环保公益项目战略.pptx
- 人教部编三年级上册语文精品教学课件 第七单元 我与自然 21 大自然的声音.ppt
- 2025年鹰潭职业技术学院高职单招语文2018-2024历年参考题库频考点含答案解析.docx
- 2025年鹰潭职业技术学院高职单招高职单招英语2016-2024历年频考点试题含答案解析.docx
- 灭火救援复习试题附答案.docx
- 人教部编三年级上册语文精品教学课件 第三单元 10. 在牛肚子里旅行.ppt
- 灭火救援复习测试卷.docx
- 掌握数字货币新篇章-解析风险、展望未来与潜力.pptx
文档评论(0)