实验二+++栈的应用(数制转换).doc

上传人:sk****8 文档编号:2214356 上传时间:2019-05-02 格式:DOC 页数:5 大小:66.50KB
下载 相关 举报
实验二+++栈的应用(数制转换).doc_第1页
第1页 / 共5页
实验二+++栈的应用(数制转换).doc_第2页
第2页 / 共5页
实验二+++栈的应用(数制转换).doc_第3页
第3页 / 共5页
实验二+++栈的应用(数制转换).doc_第4页
第4页 / 共5页
实验二+++栈的应用(数制转换).doc_第5页
第5页 / 共5页
亲,该文档总共5页,全部预览完了,如果喜欢就下载吧!
资源描述

1、实验二 栈的应用(数制转换)一、 实验目的掌握栈的基本操作:初始化栈、判栈为空、出栈、入栈等运算。二、实验要求1 认真阅读和掌握本实验的算法。2 上机将本算法实现。 3 保存程序的运行结果,并结合程序进行分析。三、实验内容利用栈的基本操作实现将任意一个十进制整数转化为 R 进制整数算法为:1、定义栈的顺序存取结构2、分别定义栈的基本操作(初始化栈、判栈为空、出栈、入栈等)3、定义一个函数用来实现上面问题:(1)十进制整数 X 和 R 作为形参(2)初始化栈(3)只要 X 不为 0 重复做下列动作将 X % R 入栈, X=X/R(4)只要栈不为空重复做下列动作栈顶出栈 , 输出栈顶元素四、实验

2、报告要求:1、十进制整数转化为 R 进制整数算法的代码;2、程序运行结果及分析;3、实验总结。1.实验源码:#include“stdio.h“#include“stdlib.h“#include“malloc.h“#define maxsize 100typedef structint datamaxsize;int top;seqstack,*pseqstack;pseqstack setstack()pseqstack s;s=(pseqstack)malloc(sizeof(seqstack);if(s)s-top=-1;return s;int empty(pseqstack s)if

3、(s-top=-1)return 1;else return 0;pseqstack pushin(pseqstack s,int m,int r)if(s-top=maxsize-1)printf(“此栈已满,无法入栈!n“);elsewhile(m!=0)s-top+;s-datas-top=m%r;m=(m-(m%r)/r;return s;int popout(pseqstack s)if(empty(s)return 0;elseprintf(“转化后的数是:“);while(s-top!=-1)printf(“%d“,s-datas-top);s-top-;putchar(n);return 1;void main()int m,r;pseqstack p;p=(pseqstack)malloc(sizeof(seqstack);printf(“请输入一个十进制的正整数:“);scanf(“%d“,printf(“请输入你想转化的进制位:“);scanf(“%d“,p=setstack();p=pushin(p,m,r);popout(p);2.程序截图:3.实验总结:

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 教育教学资料库 > 课程笔记

Copyright © 2018-2021 Wenke99.com All rights reserved

工信部备案号浙ICP备20026746号-2  

公安局备案号:浙公网安备33038302330469号

本站为C2C交文档易平台,即用户上传的文档直接卖给下载用户,本站只是网络服务中间平台,所有原创文档下载所得归上传人所有,若您发现上传作品侵犯了您的权利,请立刻联系网站客服并提供证据,平台将在3个工作日内予以改正。