- 2
- 0
- 约1.18万字
- 约 45页
- 2019-03-27 发布于湖北
- 举报
【项目要求】 将从键盘输入的十进制数转换为N(如二进制、八进制、十六进制)进制数据,利用顺序栈实现数制转换问题 问题情境及实现 /*? ????堆栈的应用---进制转换? ????????将十进制转换成其他进制?? */?? #include?stdio.h?? #define?maNlen?100?? ?? typedef?struct???????????//堆栈的结构大家应该都很熟悉了??? {?? ????int?data[maNlen];?? ????int?top;?? }SeqStack;?? ?? void?InitStack(SeqStack?*?S)???//置栈空??? {?? ????S-top?=?-1;?? }?? ?? 问题情境及实现 void?Pop(SeqStack?*?S,?int?*?N)????//出栈,N用来接受被弹出的数的?? {?? ????*N?=?S-data[S-top];?? ????S-top--;?? }??? ?? void?Push(SeqStack?*?S,?int?N)????//入栈?? {?? ????S-top++;?? ????S-data[S-top]?=?N;?? }??? ?? void?Conversion(SeqStack?*?S,?int?n,?int?d)????//n为一个十进制数,d为进制??? {?? ????if(d??0)??? ????????printf(ERROR!\n);?? ????if(n??0)?? ????????n?=?-n;?? ????if(n?==?0)?? ????????Push(S,?0);?? ????while(n)?? ????{?? ????????Push(S,?n%d);?? ????????n?/=?d;?? ????}?? }????? 问题情境及实现 int?main()?? {?? ????int?n,d,N;??????//n为一个十进制数,d为进制??? ????SeqStack?stack,?*S;?? ????S?=?stack;?? ?????? ????while(scanf(%d?%d,n,d)?!=?EOF)??? ????{?? ????????InitStack(S);??????????//初始化??? ????????Conversion(S,?n,?d);?? ????????if(n??0)?? ????????????printf(%c,-);?//若是负数??? ????????while(S-top?!=?-1)?? ????????{?? ????????????Pop(S,?N);?? ????????????if(N??10)?? ????????????????printf(%d,N);?? ????????????else?? ????????????????printf(%c,N?+?55);????//使输出的时候大于9的输出为字母ABC??????? ????????}?? ?????????? ????????printf(\n);?? ????}?? ????????return?0;?? }?? 相关知识 1 栈 1.1 栈的定义及顺序存储 1.2 栈的运算 1.3 双栈的操作 1.4 栈的应用 1.1 栈的定义及顺序存储 2. 栈的顺序存储 #define MAN 栈中允许存放元素的最大个数 typedef struct { datatype data[MAN]; int top; }stack; 1.2 栈的运算 1. 栈的基本操作 2. 栈的基本算法的实现 ⑴ 栈的初始化 ⑶ 入栈 void push (stack *s, datatype N) { if (s-top==MAN-1) printf(栈满); else { s-top++; s-data[s-top]=N; } } ⑷ 出栈 void pop(stack *s,datatype *N) { if(empty(s)) printf(栈空); else { *N=s-data[s-top]; s-top--; } } ⑸ 取栈顶元素 datatype get(stack *s) { if(empty(s)) printf(栈空); else return(s-data[s-top]); } 1.3 双栈的操作 让两个栈共享一个数组的存储空间,让一个栈的栈底为该
您可能关注的文档
- 11土木房屋建筑学复习题.doc
- 92燃气压力试验记录.doc
- 福建省宁德市霞浦县民族中学-学年八年级物理上学期期末模拟试题2(含解析) 新人教版.doc
- 5道路之星-路基路面控制.ppt
- Oceanus服饰有限公司电子商务实验报告.docx
- 春赵建华-12615313毕业答辩PPT资料.ppt
- 精馏塔的计算.docx
- 94604回风石门开口掘进安全技术措施.doc
- Hay岗位分析方法培训.ppt
- 山西省临汾市浮山中学-学年高一地理下学期期中试题.doc
- 某县委书记中央党校研修班学习小结总结报告.pdf
- 世界一流港口综合评价报告(2025)-中国经济信息社&交通运输部水运科学研究院_可搜索.pdf
- 2026年上海黄埔区高三一模高考历史试卷试题(含答案详解).docx
- 三年级(下)英语同步字帖《人教版》_可搜索.pdf
- 人工智能对汽车行业的影响-思略特_可搜索.pdf
- 2026年春期新教材人教版二年级下册数学 第1单元 有余数的除法 单元核心素养教案.docx
- 体育产业概论(第二版)教学课件第十一章 体育用品业_可搜索.pdf
- 职场实用英语交际教程(中级)课件U9_可搜索.pdf
- 小学语文《课后三表专练》五年级下册(26春)_可搜索.pdf
- 2026年高中政治学业水平考试知识点归纳总结(必修一-四).docx
最近下载
- 全国初级注册安全工程师职业资格考试辅导教材:安全生产实务.docx VIP
- TB∕T 3484-2017 列控系统应答器应用原则 含2025第1号修改单.docx VIP
- 非遗美术创作课件.pptx
- DB41∕T 385-2025 工业与城镇生活用水定额.pdf VIP
- DB41∕T 958-2025 农业与农村生活用水定额.pdf VIP
- Panasonic 松下 【蒸烤箱】NU-SC211W使用说明书.pdf
- 软考初级信息系统运行管理员考试题库历年真题及答案.docx VIP
- DB41∕T 3056-2025 露天矿山生态修复技术规程.pdf VIP
- 长江流域超标准洪水防御预案.docx VIP
- 中等职业学校英语教学大纲教育部.docx VIP
原创力文档

文档评论(0)