数据结构实验三(顺序栈的基本操作)(5页).doc

上传人:1595****071 文档编号:37010559 上传时间:2022-08-29 格式:DOC 页数:4 大小:204KB
返回 下载 相关 举报
数据结构实验三(顺序栈的基本操作)(5页).doc_第1页
第1页 / 共4页
数据结构实验三(顺序栈的基本操作)(5页).doc_第2页
第2页 / 共4页
点击查看更多>>
资源描述

《数据结构实验三(顺序栈的基本操作)(5页).doc》由会员分享,可在线阅读,更多相关《数据结构实验三(顺序栈的基本操作)(5页).doc(4页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、-数据结构实验三(顺序栈的基本操作)-第 4 页#include#include#include#define MAXSIZE 100typedef int DataType;typedef struct stackDataType dataMAXSIZE;int top;sqstack;sqstack *InitStack(sqstack *S)/顺序栈的初始化S-top=-1;return S;void push(sqstack *S,DataType x)/顺序栈的元素入栈if(S-topMAXSIZE-1)printf(error!);elseS-top+;S-dataS-top=x;

2、DataType pop(sqstack *S)/顺序栈的元素出栈int x;if(S-top=-1)printf(Underflow!);elsex=S-dataS-top;printf(出栈的元素为:%dn,S-dataS-top);S-top-;return x;DataType GetTop(sqstack *S)/顺序栈取顶元素if(S-top=-1)printf(Underflow!n);return 0;elsereturn S-dataS-top;int Empty(sqstack *S)/顺序栈的判空if(S-top=-1)return 1;else return 0;voi

3、d Digit_conversion(sqstack *S)int i=0,x,y,kMAXSIZE,m;InitStack(S);printf(请输入一个十进制数和您将要转换的进制数(2,8,16):n);scanf(%d%d,&x,&y);while(x)push(S,x%y);x=x/y;while(!Empty(S)ki=pop(S);i+;m=i;printf(十进制数转化为进制数为:);for(i=0;i9)printf(%c,ki+A-10); else printf(%3d,ki);int main()sqstack *L,*Sqstack;char m;int data; L

4、=(sqstack *)malloc(sizeof(sqstack);system(color 3f);printf( 菜单列表 n);printf(tn);printf(t*n);printf(t* * *n);printf(t* 0.退出 * 1.顺序栈的初始化 *n);printf(t* * *n);printf(t*n);printf(t* * *n);printf(t* 2.元素的入栈 * 3.元素的出栈 *n);printf(t* * *n);printf(t*n);printf(t* * *n);printf(t* 4.取栈顶元素 * 5.判空 *n);printf(t* * *

5、n);printf(t*n);printf(t* *n);printf(t* 6.将十进制数转换为其他进制数 *n);printf(t* *n);printf(t*n);printf(tn);while (m=0)&(m=1)&(m=2)&(m=3)&(m=4)&(m=5)&(m=6)&(m=7)printf(n请选择你需要操作的步骤(0至7):);fflush(stdin);scanf(%c,&m);switch(m)case 0:exit(0);break;case 1:Sqstack=InitStack(L);break;case 2:printf(输入你要入栈的数据:n);scanf(

6、%d,&data);fflush(stdin);while(data!=0)push(Sqstack,data);printf(继续输入你要入栈的数据,若想结束,请按0终止n);scanf(%d,&data);break;case 3:pop(Sqstack);break;case 4:printf(输入取出的栈顶元素:n);printf(其值为:%dn,GetTop(Sqstack);break;case 5:if(Empty(Sqstack)=1)printf(此栈为空!n);elseprintf(此栈不为空!n);break;case 6:Digit_conversion(Sqstack);break;return 0;

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 教育专区 > 高考资料

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号© 2020-2023 www.taowenge.com 淘文阁