一元多项式加减

一元多项式加减

ID:40575336

大小:197.69 KB

页数:9页

时间:2019-08-04

一元多项式加减_第1页
一元多项式加减_第2页
一元多项式加减_第3页
一元多项式加减_第4页
一元多项式加减_第5页
资源描述:

《一元多项式加减》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、一元多项式加减乘的程序(带有注释和用户选择界面)    #include#includetypedefstructnode{//定义节点类型floatcoef;intexpn;structnode*next;}PLOY;voidstart()//用户选择界面{printf("************************************");printf("两个一元多项式的相加/相减,相乘:");printf("************************************");printf("请选择操作:");

2、printf("0.退出");printf("1.两个一元多项式相加");printf("2.两个一元多项式相乘");printf("3.两个一元多项式相减"); }voidinsert(PLOY*head,PLOY*inpt)//查找位置插入新链节程序{PLOY*pre,*now;intsignal=0;pre=head;//pre定义为现在的前一个链节if(pre->next==NULL){pre->next=inpt;}else{now=pre->next;while(signal==0){if(inpt->expnexpn)//当新链节小于现在的连接

3、时向后移一个链节{if(now->next==NULL){now->next=inpt;signal=1;}else{pre=now;now=pre->next;}}elseif(inpt->expn>now->expn)//如果发现比现在的链节大了就插入到这个连接的前面{inpt->next=now;pre->next=inpt;signal=1;}else{now->coef=now->coef+inpt->coef;signal=1;free(inpt);//与当前链节相等指数if(now->coef==0){pre->next=now->next;free(now);}}}}}

4、PLOY*creat(charch)//输入多项式{PLOY*head,*inpt;floatx;inty;head=(PLOY*)malloc(sizeof(PLOY));//创建链表头head->next=NULL;printf("请输入一元多项式%c:(格式是:系数指数;以00结束!)",ch);scanf("%f%d",&x,&y);while(x!=0){inpt=(PLOY*)malloc(sizeof(PLOY));//创建新链节inpt->coef=x;inpt->expn=y;inpt->next=NULL;insert(head,inpt);//不然就查找位置并

5、且插入新链节printf("请输入一元多项式%c的下一项:(以00结束!)",ch);scanf("%f%d",&x,&y);}returnhead;}PLOY*addPLOY(PLOY*head,PLOY*pre)//多项式相加{PLOY*inpt;intflag=0;while(flag==0){if(pre->next==NULL)flag=1;//当现在指向空时跳出循环else{pre=pre->next;inpt=(PLOY*)malloc(sizeof(PLOY));//创建新链节inpt->coef=pre->coef;inpt->expn=pre->expn;inp

6、t->next=NULL;insert(head,inpt);}//否则把当前“g(x)”的链节插入到“y(x)”中}returnhead;}PLOY*minusPLOY(PLOY*head,PLOY*pre)//多项式相加{PLOY*inpt;intflag=0;while(flag==0){if(pre->next==NULL)flag=1;//当现在指向空时跳出循环else{pre=pre->next;inpt=(PLOY*)malloc(sizeof(PLOY));//创建新链节inpt->coef=0-pre->coef;inpt->expn=pre->expn;inpt->

7、next=NULL;insert(head,inpt);}//否则把当前“g(x)”的链节插入到“y(x)”中}returnhead;}PLOY*byPLOY(PLOY*head1,PLOY*head2)//多项式相乘{PLOY*inpt,*res,*pre;intflag=0;res=(PLOY*)malloc(sizeof(PLOY));//创建链表头res->next=NULL;head1=head1->next;pre=head2;wh

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

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

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