c语言实现栈进制转换实验报告,数据结构实验报告栈进制转换.doc-资源下载在线文库www.lddoc.cn...

数据结构实验报告 栈进制转换.doc

数据结构试验报告数据结构试验报告 栈的应用栈的应用进制转换进制转换程序程序 姓名姓名 班级班级 学号学号 算法步骤算法步骤 1.定义栈与建立空栈定义栈与建立空栈 typedef struct int *base; int *top; int stacksize; Stack; int InitStackStack *s s-baseint *mallocSTACK_INIT_SIZE * sizeofint; ifs-base exitOVERFLOW; s-tops-base; s-stacksizeSTACK_INIT_SIZE; return OK; 2.入栈程序入栈程序 int PushStack *s , int *e ifs-top - s-base STACK_INIT_SIZE s-baseint *reallocs-base , s-stacksize STACKINCREMENT * sizeofint ; ifs-base exitOVERFLOW; s-tops-base STACKINCREMENT; * s-top *e; return OK; 3.出栈程序出栈程序 int PopStack *s , int *e ifs-top s-base return ERROR; *e * s-top; return OK; 4.主函数与进制转化主函数与进制转化 void main int N; int a; int e; Stack s; InitStack Pop Push InitStack printf“请输入十进制数“; scanf“d“, printf“要将N转化为几进制“; scanf“d“, whileN eNa; Push N N / a ; whiles.bases.top Pop printf“d“,e; frees.base; system“pause“; 3.源程序源程序 include include include define STACK_INIT_SIZE 100 define STACKINCREMENT 10 define OK 1 define ERROR 0 define OVERFLOW -1 define TRUE 1 define FALSE -1 typedef struct int *base; int *top; int stacksize; Stack; int InitStackStack *s s-baseint *mallocSTACK_INIT_SIZE * sizeofint; ifs-base exitOVERFLOW; s-tops-base; s-stacksizeSTACK_INIT_SIZE; return OK; int PushStack *s , int *e ifs-top - s-base STACK_INIT_SIZE s-baseint *reallocs-base , s-stacksize STACKINCREMENT * sizeofint ; ifs-base exitOVERFLOW; s-tops-base STACKINCREMENT; * s-top *e; return OK; int PopStack *s , int *e ifs-top s-base return ERROR; *e * s-top; return OK; void main int N; int a; int e; Stack s; InitStack Pop Push InitStack printf“请输入十进制数“; scanf“d“, printf“要将N转化为几进制“; scanf“d“, whileN eNa; Push N N / a ; whiles.bases.top Pop printf“d“,e; frees.base; system“pause“; 调试与体会调试与体会 1.1.调试结果调试结果 2.2.体会体会 这次数据结构作业我选择了做进制转换, 首先我觉得这个比较有实际意义, 其次我觉得 做迷宫比较难。 这次主要是学习如何用栈,栈自动分配变量,以及函数调用时所使用的一些空间。通过 编写这次程序,提高了对栈的理解,自我查找与学习交流能力,这次编写程序,自己通过结 合课本知识编写了出来。 但是这次暴露出自己函数调用还是有一些问题的, 通过同学的帮忙 解决了很小但很严重的一个问题。这次,我对数据结构和 C 语言也有了更多地理解。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值