大家好,小百来为大家解答以上的问题。一元多项式数据结构问题描述,一元多项式数据结构这个很多人还不知道,现在让我们一起来看看吧!
1、#include
2、用于将两个多项式相加,然后将和多项式存放在多项式ha中,并将多项式hb删除{ node *p,*q,*pre,*temp; int sum; p=ha->next; q=hb->next; pre=ha; while(p!=NULL&&q!=NULL) { if(p->exp
3、则删除结点p与q,并将指针指向下一个结点 { temp=p->next;free(p);p=temp; temp=q->next;free(q);q=temp; } } else { pre->next=q; pre=pre->next; q=q->next; } } if(p!=NULL) //将多项式A中剩余的结点加入到和多项式中 pre->next=p; else pre->next=q; } void multipoly(node *ha,node *hb) { node *p,*q,*n,*m; p=ha->next; n=(node*)malloc(sizeof(node)); n->next=NULL; while(p!=NULL) { m=(node*)malloc(sizeof(node)); for(q=hb->next;q;q=q->next) { m->coef=p->coef*q->coef; m->exp=p->exp+q->exp; m->next=NULL; } p=p->next; polyadd(n,m); } printf("多项式的积是:"); print(n);}void main() { node *ha,*hb; printf("请输入多项式ha的系数与指数:"); ha=create(); print(ha); printf(""); printf("请输入多项式hb的系数与指数:"); hb=create(); print(hb); printf(""); printf("多项式的和是:"); polyadd(ha,hb); print(ha); printf(""); multipoly(ha,hb);}。
本文到此分享完毕,希望对大家有所帮助。