




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、数据结构实验报告实验名称:多项式加减法学号:19姓名:林强实验日期:一、实验目的通过实现多项式的加减法,对链表有更深入的了解二、实验具体内容1、实验题目1 :(1) 题目设计一个一元稀疏多项式简单的加减法计算器实现要求:一元稀疏多项式简单计算器的基本功能是:(1) 输入并建立多项式:A(x) 7 3x 9x8 5x17 ;B(x) 8x 22x7 9x8(2) 输出多项式(3) 多项式A和B相加,建立多项式 C= A+ B,并输出相加的结果多项式C(4) 选作:多项式 A和B相减,建立多项式 C= A- B,并输出相加的结果多项式D(2) 分析1:本程序的任务是实现两个多项式的加法其中多项式的
2、系数为浮点型,指数为整数,输出的结果也为系数和指数。(1 )输入的形式和输入值的范围:输入多项式的系数 a和未知数X的指数b,当a和b都为零时,输入结束。输入值的范围: a为实数,b为整数。(2) 输出形式:输出多项式的系数和多项式未知数X的指数即(a,b)形式。(3) 程序所能达到的功能,实现两个多项式的加法,并输出最后的结果2:整个程序运行期间实行动态创建节点,一边输入数据,一边创建节点当将全部数据输入到单链表中后再调用多项式加法这个函数,并一边实现多项式的相加,一边释放节点,有效防止了在程序反复运行过程中可能出现系统空间不够分配的现象(3 )实验代码typedef int Status;
3、#define OVERFLOW -1#define null 0typedef struct Lnodefloat coef; /存储项系数int expn;/存储项指数struct Lnode *next;Lnode,*LinkList;typedef LinkList polynomial;Status InitList_L(LinkList & L) /初始化头节点L=(LinkList)malloc(sizeof(Lnode); if(!L)return(-1);L-next=null;return 1;void AddPolyn(polynomial pa, polynomial
4、pb)/实现两个多项式相加的算法float x;polynomial qa;polynomial qb;polynomial s;polynomial u;qa=pa-next; qb=pb-next; s=pa;while(qa&qb)if(qa_expnexpn)s=qa;qa=qa-next;else if(qa-expn=qb-expn)x=qa-coef+qb-coef;if(x!=0)qa-coef=x;s=qa;qa=qa_next;u=qb;qb=qb-next;free(u);elses-next=qa-next;free(qa);qa=s-next;u=qb;qb=qb-n
5、ext;free(u);else if(qa-expnqb-expn)u=qb-next;s-next=qb;s=qb; qb-next=qa;qb=u;if(qb)qa-next=qb; free(pb);void main()float a;int b;polynomial L1;polynomial L2;LinkList q;LinkList p;LinkList m;LinkList n;lnitList_L(L1);q=L1;InitList_L(L2);p=L2;coutvv请输入数据:vvendl;for(;)cina;cinb;if(a=O&b=0)break;m=new L
6、node;m_coef=a;m_expn=b;q_next=m;q=m;q-next=null;循环输入第一个多项式的系数与指数for(;)cina;cinb;if(a=0&b=0)break;n=new Lnode;n-coef=a;n-expn=b;p-next=n;p=n;p-next=null;/循环输入第二个多项式的系数与指数AddPolyn(L1, L2);/调用多项式相加的算法while(L1-next)!=null)coutvv(vvL1-next-coefvv,vvL1-next-expnvv)vv;L1=L1-next;/输岀计算结果三、实验小结通过编写多项加法这个程序,我将自己所学到的创建链表,初始化链表和多项式加法算法都应用了一次,这使我们不仅仅只 是理论化的学习
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 农业种植技术知识试题及答案
- 电厂技术部长面试题及答案
- 辅警教育培训课件
- 农业银行2025白银市秋招笔试性格测试题专练及答案
- 交通银行2025西安市秋招笔试价值观测评题专练及答案
- 2025年3D打印技术的快速成型技术
- 2025年3D打印的建筑技术
- 交通银行2025秋招笔试综合模拟题库及答案山西地区
- 交通银行2025内江市秋招笔试综合模拟题库及答案
- 中国银行2025通辽市笔试行测高频题及答案
- 基坑工程课程设计
- 医美注射类知识培训课件
- 高速公路文明施工文物保护保证体系及保证措施
- 监理部总控制计划
- 软件可行性报告范文
- 压裂泵往复密封动态磨损机理及失效自愈控制技术研究
- 消除三病反歧视培训
- 脑转移瘤的治疗进展
- 脚手架工安全技术交底(完整版)
- 接触网运行与检修 课件全套 薛艳红 第1-9章 电气化铁道概述-高速铁路接触网精测精修
- 2024-2030年中国抗衰老产品和服务行业市场发展趋势与前景展望战略研究报告
评论
0/150
提交评论