欢迎来到毕设资料网! | 帮助中心 毕设资料交流与分享平台
毕设资料网
全部分类
  • 毕业设计>
  • 毕业论文>
  • 外文翻译>
  • 课程设计>
  • 实习报告>
  • 相关资料>
  • ImageVerifierCode 换一换
    首页 毕设资料网 > 资源分类 > DOC文档下载
    分享到微信 分享到微博 分享到QQ空间

    数据结构课程设计--数制转换问题

    • 资源ID:1398690       资源大小:114.50KB        全文页数:16页
    • 资源格式: DOC        下载积分:100金币
    快捷下载 游客一键下载
    账号登录下载
    三方登录下载: QQ登录
    下载资源需要100金币
    邮箱/手机:
    温馨提示:
    快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝   
    验证码:   换一换

     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。

    数据结构课程设计--数制转换问题

    1、 数据结构与算法课程设计数据结构与算法课程设计 说说 明明 书书 学学 院 、 系院 、 系 : 软件学院 专专 业业: 软件工程 学学 生生 姓姓 名:名: xxx 学学 号:号: xxxx 设设 计计 题题 目目: 数制转换问题 起起 迄迄 日日 期期: 2013 年 12 月 9 日- 2013 年 12 月 20 日 指指 导导 教教 师师: xxx 2013 年 12 月 20 日 1 1、 需求分析需求分析 任意给定一个 M 进制的数 x ,请实现如下要求 1) 求出此数 x 的 10 进制值(用 MD 表示) 2) 实现对 x 向任意的一个非 M 进制的数的转换。 3) 用两种方

    2、法实现上述要求(用栈解决和用数组解决)。 2 2、概要设计概要设计 流程图 数组的流程图: 开始 执行 main 函数 输入需转换进制的 数字(2or8or10or16) switch()选择功能 选择操作编号 2.退出 exit(0) 1进入转换系统 m=16 m=2| m=8 m=10 2 栈的流程图: MtoD() HtoD() 输入十进制数 DtoM() 输 出 结 果 输 出 结 果 输 出 结 果 开始 执行 main 函数 switch()选择功能 选择操作编号 2.退出 exit(0) 1进入转换系统 InitStack()构造空栈 输入需转换进制的 数字(2or8or10or

    3、16) m=2|m=8|m=16 m=10 MtoD() 输入一个十进制数 3 算法思想 、用数组实现该问题: DtoM()函数和 MtoD()函数是实现该问题的主要函数。 DtoM()函数是实现十进制 转换为其它进制的函数, 它是将输入的十进制数取首先对需要转换的进制 M 取余, 然 后再对其取整,接着通过递归调用 DtoM()函数依次将得到的整数部分依次先取余后取 整,并将所得的余数依次存入一个数组中,然后逆向取出数组中的元素,即得到转换后 的结果。而 MtoD()函数则是实现其他进制 M 转换为十进制,并将其转换为非 M 进制的 数。M 进制转十进制则是从该 M 进制数的最后一位开始算,

    4、依次列为第、 位并分别乘以 M 的、次方,将得到的次方相加便得到对应的十进制数,再 调用 DtoM()函数将其转换为非 M 进制的数。 、用栈实现该问题: 同样是利用 DtoM()和 MtoD()两个函数实现。两个函数的思想同利用数组实现时相 同。只是栈具有后进先出的性质,故其用 Pop()取数较数组的逆向取数方便些。 模块划分 、用数组实现该问题: i,j,y,n,s,m,r,reminder,x 是定义的全局变量,初始值都为; DtoM(int g,int h)是实现十进制数转换为 M 进制数的函数; MtoD()是实现 M(仅指二进制数和八进制数)进制数转换为十进制数的函数, 并 在其中

    5、调用 D2M(int g,int h)实现向非 M 进制数的转换; HtoD(int f)是实现十六进制数转换为十进制数的函数, 并在其中调用 D2M(int g,int h)实现向非十六进制数的转换; void main()是主函数,功能是给出测试的数据,并在特定条件下调用 D2M() DtoM() DtoM() 输出结果 销毁栈 4 函数和 M2D()函数。 、用栈实现该问题: SqStack 定义栈,说明 base 为栈底指针,top 为栈顶指针,stacksize 为栈容 量; int InitStack(SqStack int i=0;int j; int reminder; rem

    6、inder=g%h; g=g/h; 5 if(reminder9) ci=reminder+55; i+; else ci=reminder; i+; if(g0) DtoM(g,h); for(j=i-1;j=0;j-) if(cj=65) printf(“%c“,cj); else printf(“%d“,cj); /以下 MtoD()是实现 M(仅指二进制数和八进制数)进制数转换为十进制数的函数, 并在 其中调用 D2M(int g,int h)实现向非 M 进制数的转换 MtoD(int e) /二进制和八进制数转换为十进制数,并这转换为其他进制数 int n,i,y=0,j,s; int aN; printf(“请输入%d 进制位数:“,e); scanf(“%d“, j=0; printf(“请输入%d 进制的每位并使每位用空格隔开:“,e); 6 for(i=n-1;i=0;i-) scanf


    注意事项

    本文(数据结构课程设计--数制转换问题)为本站会员(毕****文)主动上传,毕设资料网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请联系网站客服QQ:540560583,我们立即给予删除!




    关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们
    本站所有资料均属于原创者所有,仅提供参考和学习交流之用,请勿用做其他用途,转载必究!如有侵犯您的权利请联系本站,一经查实我们会立即删除相关内容!
    copyright@ 2008-2025 毕设资料网所有
    联系QQ:540560583