一元多项式的相加减.doc

一元多项式的相加减.doc

ID:52784554

大小:55.50 KB

页数:13页

时间:2020-03-30

一元多项式的相加减.doc_第1页
一元多项式的相加减.doc_第2页
一元多项式的相加减.doc_第3页
一元多项式的相加减.doc_第4页
一元多项式的相加减.doc_第5页
资源描述:

《一元多项式的相加减.doc》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库

1、数据结构实验报告实验一一元多项式的表示和相减、相乘一、实验目的1.掌握链表的存储方式2.掌握一元多项式的存储及运算。二、实验内容已知一元多项式P(x)和Q(x)已存在,求P(x)-Q(x)和P(x)*Q(x)并输出。要求:1.通过键盘随机输入两多项式P(x)和Q(x)的内容。2.输出结果要有P(x)和Q(x)的以及它们的差P(x)-Q(x)和乘积P(x)*Q(x)。三、实验步骤:1.创建一元多项P(x)和Q(x)。2.求P(x)-Q(x),P(x)*Q(x)。3.输出P(x)、Q(x)、P(x)-Q(x),P(x)*Q(x)。四、算法说

2、明首先,定义一元多项式的存储方式,然后从键盘输入P(x)和Q(x)对应多项式的各对系数和指数,建立相应的一元多项式五、测试结果参考下图多项式相减多项式相乘数据结构实验报告六、源代码1.多项式的相减#include#includetypedefstruct{floatcoef;//系数intexpn;//指数}ElemType;typedefstructLNode{//结点类型ElemTypedata;structLNode*next;}*LinkList;voidMakeNode(LinkList&

3、s,ElemTypee){//生成结点s=(LinkList)malloc(sizeof(LNode));s->data=e;}数据结构实验报告voidInsAfter(LinkListp,LinkLists){//插入结点s->next=p->next;p->next=s;}intcompare(ElemTypee1,ElemTypee2){//比较if(e1.expn>e2.expn)return1;elseif(e1.expn

4、,ElemTypee,int(*compare)(ElemType,ElemType)){//有序插入LinkListp=L,q=p->next,s;while(q){intn=compare(e,q->data);if(n<0){MakeNode(s,e);InsAfter(p,s);break;}elseif(n==0){q->data.coef=q->data.coef+e.coef;if(q->data.coef==0){p->next=q->next;free(q);}break;}数据结构实验报告p=p->next;q=p-

5、>next;}if(q==NULL){MakeNode(s,e);InsAfter(p,s);//最大,放在最后一个位置}}voidInitList(LinkList&L){//初始化L=(LinkList)malloc(sizeof(LNode));L->next=NULL;}voidSetCurElem(LinkList&p,ElemTypee){//设置结点p->data.coef=e.coef;p->data.expn=e.expn;}voidCreatePolyn(LinkList&L,intm){InitList(L);El

6、emTypee;e.coef=0.0;e.expn=-1;SetCurElem(L,e);//设置头结点的数据元素printf("请输入%d对多项式的值:",m);for(inti=1;i<=m;i++){scanf("%f%d",&e.coef,&e.expn);//输入值OrderInsert(L,e,compare);}}数据结构实验报告voidshow(LinkListL){//输出方法LinkListp=L->next;if(p){//第一个输出printf("%.2fX^%d",p->data.coef,p->data.

7、expn);p=p->next;}while(p){if(p->data.coef>0)printf("+");printf("%.2fX^%d",p->data.coef,p->data.expn);p=p->next;}printf("");}voidListDestroy(LinkList&L){//销毁LinkListp=L,q;while(p){q=p;p=p->next;free(q);}}voidsubtract(LinkListL1,LinkListL2,LinkList&L3){//多项式相减ElemTypee;I

8、nitList(L3);e.coef=0.0;数据结构实验报告e.expn=-1;SetCurElem(L3,e);//设置头结点的数据元素LinkListp1=L1->next,p2=L2->next,q

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。