网站大量收购独家精品文档,联系QQ:2885784924

数据结构数制转换课设报告.doc

  1. 1、本文档共15页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
数据结构数制转换课设报告

数据结构 课程设计报告 设计题目:数制转换 学 院 经济与管理学院 专 业 信息管理与信息系统 班 级 学 号 姓 名 2012秋季学期 一、问题描述 3 二、基本要求 3 三、算法思想 3 四、数据结构 4 五、模块划分 4 六、源程序 4 七、测试数据 9 八、运行及测试情况 10 一、问题描述任意给定一个M进制的数x,转换为其它任意进制的数据。基本要求) 对给一个M进制的数据x,求出此数x的10进制值; ) 实现对x向任意的一个非M进制的数的转换。算法思想void convertion(int n)和void convert (int n)函数是实现该问题的主要函数。void convertion(int n)函数是实现对给一个M进制的数据x,求出此数x的10进制值….n位并分别乘以M的0、1、2…n次方,将得到的次方相加便得到对应的十进制数,在调用void convert (int n)函数时在void convert (int n)函数中调用void BA(int n)和void ER(int n)和void SHILIU(int n) 三个函数实现十进制向其他进制的转换,在这三个函数中,将其转换为非M进制的数,十六进制转十进制则是用数组实现上述转换。void convert (int n)函数,它是将输入的十进制数x取首先分别对需要转换的M进制取余,然后再对其取整,接着通过while循环一次将得到的整数部分依次先取余后取整。然后逆向取出即得到转换后的结果。在void convert (int n)函数中调用void BA(int n)和void ER(int n)和void SHILIU(int n) 三个函数实现十进制向其他进制的转换。 (2)用栈实现该问题:void Push (stacknode *head,int x)和int Pop (stacknode *head)两个函数用栈的后进先出的性质,故用Pop()逆向取数方便 四、数据结构带头结点链表结点结构定义如下{ int data; struct stacknode *next; }stacknode; stacknode *head; 五、模块划分void Push (stacknode *head,int x)功能是: 入栈操作 int Pop (stacknode *head) 功能是: 出栈操作 void BA(int n) 功能是:栈的应用:十——八进制转换 void SHILIU(int n) 功能是:栈的应用:十——十六进制转换 void ER(int n) 功能是:栈的应用:十——二进制转换 void convert (int n) 功能是:将十进制转换为其他进制 void convertion(int n) 功能是:将m进制转换为非m进制: void main() 主函数 功能是: 六、源程序#includestdio.h #includestdlib.h #include math.h #define N 100 typedef struct stacknode /*定义栈结点的存储结构*/ { int data; struct stacknode *next; }stacknode; stacknode *head; void Push (stacknode *head,int x) /*进栈操作*/ { stacknode *p; p=(stacknode*)malloc(sizeof(stacknode)); p-data=x; p-next=head-next; /*新结点链入栈顶*/ head-next=p; /*新结点成为新的栈顶*/ } int Pop (stacknode *head) /*出栈操作*/ { int x; stacknode *p=head-next; if (p==NULL) printf (\t\t栈为空。\n); else

您可能关注的文档

文档评论(0)

wyjy + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档