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

数据结构实验报告-一元多项式..docVIP

  1. 1、本文档共17页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
数据结构实验报告-一元多项式.

数据结构课程设计报告 课 题: 一元多项式 姓 名: XX 学 号: 201417030218 专业班级: XXXX 指导教师: XXXX 设计时间: 2015年12月30日星期三 目录 任务目标……………………………… 3 概要设计……………………………… 4 详细设计……………………………… 6 调试分析……………………………… 8 源程序代码………………………… 8 程序运行效果图与说明…………… 15 本次实验小结……………………… 16 参考文献…………………………… 16 一丶任务目标 分析 (1) a.能够按照指数降序排列建立并输出多项式 b.能够完成两个多项式的相加,相减,并将结果输入 要求:程序所能达到的功能: a.实现一元多项式的输入; b.实现一元多项式的输出; c.计算两个一元多项式的和并输出结果; d.计算两个一元多项式的差并输出结果; 除任务要求外新增乘法: 计算两个一元多项式的乘积并输出结果 (2)输入的形式和输入值的范围: 输入要求:分行输入,每行输入一项,先输入多项式的指数,再输入多项式的系数,以0 0为结束标志,结束一个多项式的输入。 输入形式: 2 3 -1 2 3 0 1 2 0 0 输入值的范围:系数为int型,指数为float型 (3)输出的形式: 第一行输出多项式1; 第二行输出多项式2; 第三行输出多项式1与多项式2相加的结果多项式; 第四行输出多项式1与多项式2相减的结果多项式; 第五行输出多项式1与多项式2相乘的结果多项式 二、概要设计 程序实现 a. 功能:将要进行运算的二项式输入输出; b. 数据流入:要输入的二项式的系数与指数; c. 数据流出:合并同类项后的二项式; d. 程序流程图:二项式输入流程图; e. 测试要点:输入的二项式是否正确,若输入错误则重新输入。 流程图: 三、详细设计 (1):存储结构 一元多项式的表示在计算机内可以用链表来表示,为了节省存储空间,只存储多项式中系数非零的项。链表中的每一个结点存放多项式的一个系数非零项,它包含三个域,分别存放该项的系数、指数以及指向下一个多项式项结点的指针。创建一元多项式链表,对一元多项式的运算中会出现的各种可能情况进行分析,实现一元多项式的相加、相减操作。 (2):数据链表 由于采用链表的方法,我们可以建立3条链;一条用于存放多项式HA,一条用于存放多项式HB,还有一条用于存放新形成的HC。此外,我们的程序应具备以下几个功能:建立链表,撤销链表,打印链表,按要求插入一个新的结点,复制链表;为了使上面程序结构分析进一步细化,为了使程序结构更加清晰,我们可以把上面的内容都编写成函数形式。 1、建立链表 该程序建立链表的函数与大多数建立链表的操作基本一致,但是由于实体是一元多项式的关系。我们更希望,在处理客户输入的数据的同时,能对数据进行适当的处理。也就是数学上所说的,“对一元多项式进行化简,并按照降幂排序。”由于在前面的练习中,我们得知,在链表中插入一个结点的函数,具有对链表的成员进行排序与合并的功能。如此一来,我们可以巧妙地处理,在建立链表的同时,调用”在链表中插入一个结点的函数”,对新建立的链表进行化简。 该函数的算法描述如下; 声明指针变量,并作为头指针的指针变量赋初值NULL; 创建一个新的结点,并输入链表的信息; 若输入的系数值与函数值同不为0时,调用”在链表中插入一个结点的insert函数”,将结点插入链表中;(注:这里建立链表的函数与以往的不同,我们是通过假想有一条空链,不断地调用insert函数来实现建立链表的功能。简言之;链表中成员的链接全都靠insert函数来实现,而该函数仅仅是不断地提供建立链表所要的数据罢了。) 若还要继续插入结点,转到步骤2继续进行; 否则,程序结束,把头指针返回主程序。 2、撤销链表 撤销链表是为了把链表所占用的地址回收起来,防止造成浪费。我们该程序可以采用从链表的始端逐步销去结点。在这个过程中,我们需要链表的头地址作为形式参数,还需要建立一个指针用来指向新头地址。 该函数的算法描述如下: 指针变量;并把头地址指针赋给新

您可能关注的文档

文档评论(0)

sa43sad5 + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档