下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
数据结构实验报告栈的应用——进制转换程序[W[¥¥算法环节:1.定义栈与建立空栈typedefstruct{int*base;。int*top;intstacksize;(Stack;intInitStack(Stack*s){s->base=(int*)malloc(STACK_INIT_SIZE*sizeof(int));。if(!s—>base)(3exit(0VERFLOW);)。s->top=s->base;。s->stacksize=STACK_INIT_SIZE;。returnOK;)2.入栈程序intPush(Stack*s,int*e)(if(s->top-s->base>=STACK_INIT_SIZE)°{。s->base=(int*)rea1loc(s->base,(s->stacksize+STACKINCREMENT)*sizeof(int));o。if(!s—>base)O0{3sexit(OVERFLOW);oo)。。s->top=s->base+STACKINCREMENT;0)*s->top++=*e;oreturnOK;).出栈程序intPop(Stack*s,int*e){。if(s->top==s->base)°{returnERROR;0}»*e=*-s->top;returnOK;).主函数与进制转化voidmainO(intN;inta;®inte;Stacks;InitStack(&s);Pop(&s,&e);Push(&s,&e);oInitStack(&s);°printf(“请输入十进制数:");scanf("%d",&N);。printf(〃要将N转化为几进制?〃);scanf("%d",&a);。while(N)0{。。e=N%a;Push(&s,&e);N=N/a;。)swhile(s.base!=s.top)。(3Pop(&s,&c);printf("%d",e);)free(s.base);system(〃pause");)3.源程序#inc1ude<stdio.h>#include<ma11oc.h>#include<stdlib.h>^defineSTACK_INIT_SIZE100#defineSTACKINCREMENT10#defineOK1^defineERROR0#defineOVERFLOW-1#defineTRUE1^defineFALSE-1typedefstruct{int*base;int*top;intstacksize;}Stack;intInitStack(Stack*s){s->base=(int*)mal1oc(STACK_IN1T_SIZE*sizeof(int));3if(!s—>hase)°{exit(OVERFLOW);}。s—>top=s->base;s->stacksize=STACK_INIT_SIZE;returnOK;)intPush(Stack*s,int*e){if(s->top-s->base>=STACK_INIT_SIZE)(*s—>base=(int*)realloc(s->base,(s->stacksize+STACKINCREMENT)*sizeof(int));。if(!s->base)0(。。exit(OVERFLOW);a)s->top=s->base+STACKINGREMENT;0)s*s->top++=*e;returnOK;)intPop(Stack*s,int*e)。if(s->top==s->base)°(。。returnERROR;)o*e=*-s->top;。returnOK;)voidmain(){®intN;inta;inte;Stacks;InitStack(&s):。Pop(&s,&e);Push(&s,&e);。InitStack(&s);printf(〃请输入十进制数:“);scanf(“刎",&N);printf(〃要将N转化为几进制?〃);seanf&a);while(N)°{。e二N%a;。Push(&s,&e);。。N=N/a;0)。while(s.base!=s.top)°(Pop(&s,&e);oprintf(”%d”,e);3)free(s.base);system("pause");)
调试与体会1.调试结果/C:\Users\lenovo\Do<uments\VisualStudio2012\Pfo^ects\jinzhi\Debug\jiruhi.exe,古布人十进制裁।1348要卜联化为目送制?82504请按注意硼纸.■C:\Users\lenovo\Docun^ent$\VisualStudio2012\Projects\jinzhi\Debug^in2hi^xe恬河上,一讲制数:1348要将N转化为几进制?2口0191000100清按任意键继续...一.一-81A翳才If*lln一.一-81A翳才If*lln4J要y这次数据结构作业我选择了做进制转换,一方面我觉得这个比较有实际意义,另一方面我觉得做迷宫比较难。这次重要是学习如何用栈,栈自
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 课时14709-民族区域自治制度《民族区域自治教学设计》
- 2026下半年山东省事业单位社会保障服务中心笔试全真模拟试卷含答案
- 2026下半年高中英语教资面试完形填空重难点试卷及答案
- 产科理论试题及答案解析
- 江苏省无锡市江阴市南菁高中学实验学校2027届九上数学期末学业质量监测模拟试题含解析
- 2027届浙江省杭州市江干区实验中学七年级数学第一学期期末质量跟踪监视试题含解析
- 宁夏烟草招考试题及答案解析
- 听课评课:一线教师的实战经验
- 初中生必知保健常识试题与答案
- 2026年电子商务运营专员技能认证考试模拟题及答案详解
- 质量管理五大工具培训教材
- 肩袖损伤中西医结合诊疗指南
- 血流导向装置治疗动脉瘤
- 肝脓肿术后的护理查房
- 教师系列任现职以来教学工作情况证明材料
- GB/T 19183.1-2024电气和电子设备机械结构户外机壳第1部分:设计导则
- 绿网苫盖合同范例
- TD-T 1048-2016耕作层土壤剥离利用技术规范
- 读文哄睡电台文本
- 内蒙古2023年中学生生物学竞赛初赛试卷
- 中班语言-大树和小鸟
评论
0/150
提交评论