数制转换(栈的应用)17316.pdf
《数制转换(栈的应用)17316.pdf》由会员分享,可在线阅读,更多相关《数制转换(栈的应用)17316.pdf(4页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、 1/4 实验二栈的应用(数制转换)一、实验目的 掌握栈的基本操作:初始化栈、判栈为空、出栈、入栈等运算。二、实验要求 1认真阅读和掌握本实验的算法。2上机将本算法实现。3保存程序的运行结果,并结合程序进行分析。三、实验内容 利用栈的基本操作实现将任意一个十进制整数转化为 R 进制整数。算法为:1、定义栈的顺序存取结构 2、分别定义栈的基本操作(初始化栈、判栈为空、出栈、入栈等)3、定义一个函数用来实现上面问题:(1)十进制整数 X 和 R 作为形参(2)初始化栈(3)只要 X 不为 0 重复做下列动作 将 X%R 入栈,X=X/R (4)只要栈不为空重复做下列动作 栈顶出栈,输出栈顶元素 四
2、、实验报告要求:2/4 1、十进制整数转化为 R 进制整数算法的代码;2、程序运行结果及分析;3、实验总结。具体实现:/*栈(综合)时间-2012 3 16*/#include#include#include typedef struct node int data;struct node*next;NODE,*PNODE;typedef struct stack PNODE top;/!节点指针类型,用于保存当前栈顶节点的地址(top 和 bottom 均为栈所需成员)PNODE bottom;/!节点指针类型,用于保存栈内最后一个节点的下一个无实际含义节点的地址,操作中,此指针无需变更 S
3、TACK,*PSTACK;void push_stack(PSTACK ps,int val);void init_stack(PSTACK ps);void travel_stack(PSTACK ps);bool is_empty(PSTACK ps);3/4 void pop_stack(PSTACK ps,int*val);void swap_stack(PSTACK ps,int val,int R);int main(void)STACK s;int X;int R;init_stack(&s);/对 s 的两个参数进行初始化(top 和 bottom)printf(请输入你想转换
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 数制 转换 应用 17316
限制150内