ZKX's LAB

数据结构试验3顺组栈

2021-04-28知识4

数据结构实验 栈与队列 我实现第一题吧.栈空栈满很简单,就不用写了.(栈空判断条件是s.top。s.base栈满条件是s.top-s.base)includeincludedefine N 2/可以控制进制转换using namespace std;typedef struct{int*top;int*base;int stacksize;}stack;int initstack(stack&s){s.base=(int*)malloc(100*sizeof(int));s.top=s.base;s.stacksize=100;return 1;}int push(stack&s,int e){s.top=e;s.top+;return 1;}int pop(stack&s,int&e){s.top-;e=*s.top;return 1;}int getelem(stack s){int e=0;while(s.base。s.top){pop(s,e);cout;}return 1;}int creatstack(stack&s){float e=0,m=1;cout输入0表示结束栈的初始化\";while(m。0)/输入0表示结束栈的初始化{cin>;>;e;if(e。0)push(s,e);m=e;}return 1;}int convert()/利用栈转化进制函数{int n,m=1,e=0;stack s;initstack(s);cout输入你要转化的数,0表示结束\";while(m){cin>;>;n;m=n;if(n。0){while(n){push(s,n%N);n=n/N;}while(s.top。s.base){pop(s,e);cout;}cout;}}return 1;}void main(){stack s;initstack(s);creatstack(s);getelem(s);convert();}

C++数据结构上机实验。实现栈和队列两个类,以及栈的一个应用,即表达式计算问题 需求描述:用户输入完整四则运算表达式程序能够求表达式值要求能够处理括抄号、负符号、加减乘除四则运算等基本要求:括号处理、负符号处理、加减乘除四则运算及浮点数表达式处zd理应用:表达式合性检查、栈应用、优先级别判定谢谢邮箱601816948@qq.com

数据结构-栈实验 #includeincludetypedef struct student/声明节点{char date;struct student*next;}NODE,*PNODE;typedef struct stack/声明栈入口{PNODE top;PNODE bottom;}STACK,*PSTACK;void initstack(PSTACK ps);初始化参数 参数1.栈入口的地址void push(PSTACK,char);压入一个数据 参数1.栈入口的地址 参数2.需要压入的数据bool pop(PSTACK,char*);将一个数据出栈 参数1.栈入口的地址 参数2.需要保存出栈的数据地址,出栈失败返回 FALSE 真返回 TUREvoid trversal(PSTACK ps);遍历一个栈的数据 参数1.栈的地址int main(void){STACK ps;int avl;char ch;initstack(&ps);printf(\"请输入需要进栈字符,字符与栈顶元素相同,则弹出栈顶元素,否者压入栈。\\n如果接收的字符为‘$’则停止输入\\n\");do{scanf(\"%c\",&ch);getchar();if(ch='$')break;else if(ch=ps.top->;date)pop(&ps,&ch);elsepush(&ps,ch);}while(1);printf(\"栈的数据为\");trversal(&ps);return 0;}void initstack(PSTACK ps){ps->;top=(PNODE)malloc(sizeof(NODE));创建新节点if(ps->;top=NULL){printf(\"初始化栈失败。\\n\");exit(-1);}else{printf(\"完成初始化。\\n\");ps->;bottom=ps->;top;设置栈。

#数据结构试验3顺组栈

随机阅读

qrcode
访问手机版