s->expn=pa->expn; s->next=NULL;
pc->next=s;
pc=s;
pa=pa->next; } else {
x=pa->coef+pb->coef;
if(x!=0) { s=(POLY)malloc(sizeof(struct PNode)); s->coef=x; s->expn=pa->expn; s->next=NULL;
pc->next=s;
pc=s;
}
pa=pa->next;
pb=pb->next;
} } while(pa) { s=(POLY)malloc(sizeof(struct PNode)); s->coef=pa->coef; s->expn=pa->expn; s->next=NULL;
pc->next=s;
pc=s;
pa=pa->next; } while(pb) { s=(POLY)malloc(sizeof(struct PNode)); s->coef=pb->coef;
s->expn=pb->expn;
s->next=NULL;
16
pc->next=s; pc=s;
pb=pb->next; } }
void SubtractPoly(POLY Ha, POLY Hb, POLY &Hc) //一元多项式的相减操作,即实现Hc=Ha-Hb
{
int x;
POLY pa,pb,pc,s;
Hc=(POLY)malloc(sizeof(struct PNode)); Hc->next=NULL; pc=Hc; pa=Ha->next;
pb=Hb->next; while(pa&&pb) { if(pa->expn
s=(POLY)malloc(sizeof(struct PNode)); s->coef=pb->coef; s->expn=pb->expn; s->next=NULL;
pc->next=s;
pc=s;
pb=pb->next; }
else if(pa->expn>pb->expn) { s=(POLY)malloc(sizeof(struct PNode)); s->coef=pa->coef; s->expn=pa->expn; s->next=NULL;
pc->next=s;
pc=s;
pa=pa->next; } else
17
{
x=pa->coef-pb->coef;
if(x!=0)
{ s=(POLY)malloc(sizeof(struct PNode)); s->coef=x; s->expn=pa->expn; s->next=NULL;
pc->next=s;
pc=s;
}
pa=pa->next;
pb=pb->next;
} } while(pa) { s=(POLY)malloc(sizeof(struct PNode)); s->coef=pa->coef; s->expn=pa->expn; s->next=NULL;
pc->next=s;
pc=s;
pa=pa->next; } while(pb) { s=(POLY)malloc(sizeof(struct PNode)); s->coef=-pb->coef; s->expn=pb->expn; s->next=NULL;
pc->next=s;
pc=s;
pb=pb->next; } }
void main() {
POLY Ha,Hb,Hc;
18
int n;
printf(\ 创建第一个多项式中…\\n\\n\ printf(\请输入第一个多项式项数:\ scanf(\ CreatPoly(Ha,n);
printf(\第一个多项式为:\\n\ OutputPoly(Ha);
printf(\ 创建第二个多项式中…\\n\\n\
printf(\请输入第二个多项式项数:\ scanf(\ CreatPoly(Hb,n);
printf(\第二个多项式为:\\n\ OutputPoly(Hb); SubtractPoly(Ha,Hb,Hc); printf(\多项式差:\\n\ SubtractPoly(Ha,Hb,Hc); OutputPoly(Hc);
printf(\多项式和:\\n\ SubtractPoly2(Ha,Hb,Hc);
OutputPoly(Hc);
}
19
完成日期:2010年7月19日
20
百度搜索“77cn”或“免费范文网”即可找到本站免费阅读全部范文。收藏本站方便下次阅读,免费范文网,提供经典小说综合文库简单的一元多项式计算器程序(4)在线全文阅读。
相关推荐: