东软数据结构实验报告——通过栈和队列来实现进制转换

东软数据结构实验报告——通过栈和队列来实现进制转换

ID:44137895

大小:240.00 KB

页数:14页

时间:2019-10-19

东软数据结构实验报告——通过栈和队列来实现进制转换_第1页
东软数据结构实验报告——通过栈和队列来实现进制转换_第2页
东软数据结构实验报告——通过栈和队列来实现进制转换_第3页
东软数据结构实验报告——通过栈和队列来实现进制转换_第4页
东软数据结构实验报告——通过栈和队列来实现进制转换_第5页
资源描述:

《东软数据结构实验报告——通过栈和队列来实现进制转换》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、....实验报告(一)姓名:1111111111111学号:XX实验名称栈和队列的操作指导教师xxx实验地点xxx实验日期xxx实验目的理解栈和队列的概念,完成栈和队列的各种基本操作同组成员无实验过程一、项目简介进制转换通过编写函数实现十进制浮点数到R进制的转换,在十进制浮点数的整数部分利用栈结构实现,小数部分用队列结构实现。二、项目实施:1.读取数据并获得小数点位置学习.参考....2.将字符串转为整数形式学习.参考.....3.对整数部分进行入栈学习.参考....4.获得小数部分并入队学习.参考....4.整数和小数

2、的联合输出学习.参考....学习.参考....6.源代码:#include#include#include#definesize10//小数部分大小#definemaxsize20//整数部分大小//*********************************//*********************************//小数部分——队列typedefstruct{chardata[10];//读取转制后的小数部分intfront,rear;//队首尾

3、指针}Queue;//循环队列学习.参考....//*********************************//初始化队列voidinit_Queue(Queue*q){q->front=q->rear=0;}//*********************************//入队intpush_Queue(Queue*q,intx){if((q->rear+1)%size==q->front)//判断队满{printf("队列满!不允许入队");return0;}else{q->rear=(q->r

4、ear+1)%size;q->data[q->rear]=x;return1;}}//*********************************//出队intpop_Queue(Queue*q,int*x){if(q->rear==q->front){printf("队空!");return0;}else{q->front=(q->front+1)%size;*x=q->data[q->front];//读取队头元素return1;}}//*********************************学习.参

5、考....//*********************************//整数部分——栈typedefstruct{chardataint[100];inttop;}Stack;//*********************************//-制空栈voidinit_Stack(Stack*s){s->top=0;}//*********************************//进栈intpush_Stack(Stack*s,intx){if(s->top==maxsize){printf(

6、"栈已满!");return0;}else{s->dataint[s->top]=x;//数据进栈s->top++;return1;}}//*********************************//出栈intpop_Stack(Stack*s,int*x){if(s->top==0){printf("栈空,无数据可取!");return0;}else{s->top--;学习.参考....*x=s->dataint[s->top];//取处数据return1;}}//**********************

7、***********主程序intmain(){//*********************************//读入数据chara[20];intaim;printf("请输入一个十进制浮点数:");//以字符串形式输入一个浮点数gets(a);printf("请输入目标进制:");scanf("%d",&aim);if(aim==1){printf("ERROR!PLEASEINPUTANUMBERANDITISBIGGERTHAN1");return0;}//************************

8、*********//读取小数点位置inti;intpos;//小数点位置for(i=0;i

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。