三九宝宝网宝宝教育教学论文

数据结构 c后缀表达式求值的程序运行后输入任何后缀表达式得

02月23日 编辑 39baobao.com

[c语言和数据结构]没有直接关系。 1、数据结构 数据结构是计算机存储、组织数据的方式。数据结构是指相互之间存在一种或多种特定关系的数据元素的集合。通常情况下,精心选择的数据结构可以带...+阅读

自己原来做的,送给你吧,希望可以帮到你 #include #include #include typedef int datatype; #define MAXLEN 100 typedef struct { datatype data[MAXLEN]; int top; }seqstack; void main(); //声明主函数 void createseqstack(seqstack &s) //初始化栈为空 { s.top=-1; } void clean() //错误的处理:返回主函数重新开始 { Sleep(3000); //清屏前等待时间 system("CLS"); //执行清屏 main(); //重新执行主函数 } void add(seqstack &s) //执行相加 { if(s.top==NULL) { printf("读取数据失败,3秒后自动返回..."); clean(); } else { int x,y; x=s.data[s.top]; y=s.data[s.top-1]; s.data[s.top-1]=x+y; s.top--; } } void subtract(seqstack &s) //执行相减 { if(s.top==NULL) { printf("读取数据失败,3秒后自动返回..."); clean(); } else { int x,y; x=s.data[s.top]; y=s.data[s.top-1]; s.data[s.top-1]=y-x; s.top--; } } void multiply(seqstack &s) //执行相乘 { if(s.top==NULL) { printf("读取数据失败,3秒后自动返回..."); clean(); } else { int x,y; x=s.data[s.top]; y=s.data[s.top-1]; s.data[s.top-1]=x*y; s.top--; } } void divide(seqstack &s) //执行相除 { if(s.top==NULL) { printf("读取数据失败,3秒后自动返回..."); clean(); } else { int x,y; x=s.data[s.top]; y=s.data[s.top-1]; s.data[s.top-1]=y/x; s.top--; } } void input(seqstack &s) { int i,sum,ch; char str[MAXLEN]; scanf("%s",&str); sum=strlen(str); for(i=0;i<=sum+1&&ch!='\0';i++) { ch=str[i]; switch(ch) { case '+': add(s);break; case '-': subtract(s);break; case '*': multiply(s);break; case '/': divide(s);break; default: while(ch-48>=0&&ch-48<=9) { if(MAXLEN-1==s.top) //判栈满 { printf("栈已满!"); exit(0); } else { s.top++; //入栈操作 s.data[s.top]=ch-48; } break; } break; } } } void output(seqstack &s) //输出栈顶元素 { if(s.top==-1) { printf("栈为空,读取数据失败!3秒后自动返回..."); clean(); } else {printf("您输入的后缀表达式的值为:%2d\n",s.data[s.top]);} } void main() { seqstack s; createseqstack(s); printf("==============后缀表达式求值==============\n"); printf("输入要求:\n\t操作数范围0—9,运算符只含+,-,*,/,\n\t而且中间绝对不可以有空格!!!\n"); printf("==========================================\n"); printf("请输入一个整数后缀表达式:"); input(s); output(s); }

以下为关联文档:

数据结构c语言这个问题的算法要考虑周全,程序倒不复杂。以四节火车为例, 1,首先考虑四节火车进站的可能顺序有4!=24种可能。 2,出站时机有2^3=8种可能(以大写字母表入站,小写字母表出站): 出站发...

数据结构问题????数据结构是计算机存储、组织数据的方式。数据结构是指相互之间存在一种或多种特定关系的数据元素的集合。通常情况下,精心选择的数据结构可以带来更高的运行或者存储效率的算...

c语言数据结构中结构体定义问题编译器逐行解析,在定义next之前,编译器已经知道struct student这个结构类型的存在,所以可以用它来定义next。 next是指向struct student结构的指针类型。一般像这种用法,都是用...

c语言版数据结构#include #include struct chain { int value; struct chain *next; }; struct chain *create() { struct chain *head,*tail,*p; int x; head = tail = NULL; while(scanf(...

C数据结构算法这是什么关系1、C 计算机编程语言。(计算机可以识别,并且执行的程序就是靠这些高级计算机语言实现) 2、数据结构指的是数据之间的相互关系,即数据的组织形式。 1.数据结构一般包括以下三方面...

c语言数据结构赋值问题你是传值,不是传址。如下修改,能正确得到理想结果: #include<stdio.h> #include<stdlib.h> //void initstack(struct snode*); struct snode { int data[10]; int top; }; main...

数据结构算法c语言迷宫求解注释非常详细,希望对你有所帮助。#include#include#define M 15 #define N 15 struct mark //定义迷宫内点的坐标类型 { int x; int y; }; struct Element //"恋"栈元素,嘿嘿。...

数据结构课设总结我正好在做课设,我把我的总结给你。 数据结构是计算机程序设计的重要理论技术基础,它不仅是计算机科学的核心课程,而且也已经成为其他理工专业的热门选修课。随着高级语言的发...

求解二级C语言中数据结构试题完全二叉树实际就是满二叉树减少最下面一层的部分叶子结点。对于满二叉树来说,深度为K就有2^K-1个结点。700个结点就是介于511(=2^9-1)与1023(2^10-1)之间,那么该完全二叉树的...

推荐阅读
图文推荐