数据结构多项式运算器源代码Word文档下载推荐.docx

上传人:b****5 文档编号:15837613 上传时间:2022-11-16 格式:DOCX 页数:16 大小:17.43KB
下载 相关 举报
数据结构多项式运算器源代码Word文档下载推荐.docx_第1页
第1页 / 共16页
数据结构多项式运算器源代码Word文档下载推荐.docx_第2页
第2页 / 共16页
数据结构多项式运算器源代码Word文档下载推荐.docx_第3页
第3页 / 共16页
数据结构多项式运算器源代码Word文档下载推荐.docx_第4页
第4页 / 共16页
数据结构多项式运算器源代码Word文档下载推荐.docx_第5页
第5页 / 共16页
点击查看更多>>
下载资源
资源描述

数据结构多项式运算器源代码Word文档下载推荐.docx

《数据结构多项式运算器源代码Word文档下载推荐.docx》由会员分享,可在线阅读,更多相关《数据结构多项式运算器源代码Word文档下载推荐.docx(16页珍藏版)》请在冰豆网上搜索。

数据结构多项式运算器源代码Word文档下载推荐.docx

data=e;

next=NULL;

}//MakeNode

voidInitList(LinkList&

L){

L.head=L.tail=(Link)malloc(sizeof(LNode));

L.head)exit

(1);

L.head->

L.len=0;

}//InitList

voidDestroyList(LinkList&

Linkp,q;

p=L.head->

next;

while(p){

q=p->

free(p);

p=q;

}

L.tail=L.head;

}//DestroyList

voidInsLast(LinkList&

L,Links){

L.tail->

next=s;

L.tail=s;

L.len++;

}//InsLast

voidAppend(LinkList&

Linkq;

intm;

s)exit

(1);

q=s;

m=1;

while(q->

next){

m++;

q=q->

L.len+=m;

L.tail=q;

}//Append

/*====================多项式-ADT====================*/

voidCreatPolyn(LinkList&

terme;

Links;

scanf("

%f,%d"

&

e.coef,&

e.expn);

while(e.coef){

MakeNode(s,e);

InsLast(L,s);

scanf("

}//CreatPolyn

intJudge(intn){

if(n>

19||n<

0){

printf("

存储位置选择错误!

请重新选择0-19.\n"

);

return1;

else

return0;

}//Judge

voidPrintPolyn(LinkListL){

Linkp;

p)

NULL\n"

else{

y="

if(p->

data.coef>

if(p->

data.expn==0)

printf("

%f"

p->

data.coef);

else

%fx^%d"

data.coef,p->

data.expn);

p=p->

}

else{

if(p->

printf("

+%f"

+%fx^%d"

}

next)

p=p->

\n"

}//PrintPolyn

voidPrintAll(LinkListS[]){

inti;

for(i=0;

i<

20;

i++){

%d."

i);

PrintPolyn(S[i]);

}//PrintAll

voidCopyPolyn(LinkListL,LinkList&

S){

Links,p;

e.coef=p->

data.coef;

e.expn=p->

data.expn;

InsLast(S,s);

p=p->

S.tail->

}//CopyPolyn

intAddPolyn(LinkList&

L,LinkListP,LinkListQ){

Linka,b,c;

a=P.head->

b=Q.head->

while((a!

=NULL)&

&

(b!

=NULL)){

if(a->

data.expn<

b->

data.expn){

e.coef=a->

e.expn=a->

MakeNode(c,e);

InsLast(L,c);

a=a->

elseif(a->

data.expn>

e.coef=b->

e.expn=b->

b=b->

elseif((a->

data.coef+b->

data.coef)!

=0){

e.coef=a->

InsLast(L,c);

b=b->

elseif((a->

data.coef)==0){

a=a->

a&

!

b){

L.tail->

while(a){

a){

while(b){

e.coef=b->

return0;

}//AddPolyn

voidSubtractPolyn(LinkList&

p=Q.head->

p->

data.coef=0-p->

AddPolyn(L,P,Q);

}//SubtractPolyn

doubleResultPolyn(LinkListL,floatx){

doubley=0;

y+=(pow(x,p->

data.expn)*p->

returny;

}//ResultPolyn

voidMultiplyPolyn(LinkList&

Linkl,p,q;

LinkListE,F;

InitList(E);

InitList(F);

inti,j;

p=P.head->

q=Q.head->

Q.len;

for(j=0;

j<

P.len;

j++){

e.coef=p->

data.coef*q->

e.expn=p->

data.expn+q->

MakeNode(l,e);

InsLast(E,l);

AddPolyn(L,E,F);

DestroyList(E);

DestroyList(F);

CopyPolyn(L,F);

if(i!

=Q.len-1)

DestroyList(L);

p=P.head->

}//MultiplyPolyn

voidPolyn_NFang(LinkList&

L,LinkListP,intn){

LinkListE;

CopyPolyn(P,E);

n;

MultiplyPolyn(L,E,P);

CopyPolyn(L,E);

=n-1)

}//Polyn_NFang

voidPolyn_NDao(LinkList&

CopyPolyn(P,L);

p=L.head->

q=L.head;

L.len;

if(p

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 高等教育 > 经济学

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1