欢迎来到天天文库
浏览记录
ID:41411320
大小:59.38 KB
页数:8页
时间:2019-08-24
《一元多项式相加实验报告》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、一元多项式相加实验报告程序代码:#include#includetypedefstructnode{//定义节点类型floatcoef;intexpn;structnode*next;}PLOY;voidstart()//用户选择界面{printf("***++++++++++++++++++++++++++++++++++++***rT');printf(”两个一元多项式的相加:”);printf(u***++++++++++++++++++++++++++++++++++
2、++***");printf(“请选择操作:”);printf(u0.退出”);printf(nl.两个一元多项式相加”);}voidinsert(PLOY*head,PLOY*input)//查找位置插入新链节程序{PLOY*pre,*now;intsignal=0;pre=head;//pre定义为现在的前一个链节if(pre->next==NULL){pre->next=input;}else{now=pre->next;while(signal==O){if(input->expne
3、xpn)//当新链节小于现在的连接时向后移一个链节{if(now->next==NULL){now->next=input;signal=l;}elsepre=now;now=pre->next;elseif(input->expn>now->expn)//如果发现比现在的链节大了就插入到这个连接的前面{input->next=now;pre->next=input;signal=l;}else{now->coef=now->coef+input->coef;signal=l;free(input);//与当前链节相等
4、指数if(now・>coef==0){pre->next=now・>next;free(now);}}}}}PLOY*creat(charch)〃输入多项式{PLOY*head,*inpt;floatx;inty;head=(PLOY*)malloc(sizeof(PLOY));//创建链表头head->next=NULL;print"请输入一元多项式%c:(格式是:系数指数;以00结束!)”,ch);scanf(”%f%d”,&x,&y);while(x!=0){inp匸(PLOY*)malloc(sizeof(
5、PLOY));//创建新链节inpt->coef=x;inpt->expn=y;inpt->next=NULL;insert(head,inpt);//不然就查找位置并且插入新链节printfC*请输入一元多项式%c的下一项:(以0()结束!)",ch);scanf(”%f%d”,&x,&y);1returnhead;PLOY*addPLOY(PLOY*head,PLOY*pre)//多项式相加PLOY*input;intflag=0;while(flag==O){if(pre->next==NULL)flag二1
6、;〃当现在指向空时跳出循环else{pre=pre->next;input=(PLOY*)malloc(sizeof(PLOY));//创建新链节input->coef=pre->coef;input->expn=pre->expn;input->next=NULL;insert(headjnput);}//否则把当前屯(x)啲链节插入到”y(x)”中}returnhead;}PLOY*minusPLOY(PLOY*head,PLOY水pre)//多项式相加{PLOY*input;intflag=0;while(fla
7、g==O){if(pre->next==NULL)flag二1;〃当现在指向空时跳岀循环else{pre=pre->next;input=(PLOY*)malloc(sizeof(PLOY));//创建新链节input->coef=coef;input->expn=pre->expn;input->next=NULL;insert(head,input);}//否则把当前”g(x)”的链节插入到“y(x)“中}PLOY*byPLOY(PLOY*head1,PLOY*head2)//多项式相乘PLOY*input,*re
8、s,*p「e;intflag=0;res=(PLOY*)malloc(sizeof(PLOY));//创建链表头res->next=NULL;head1=head1・>next;pre=head2;while(flag==O){if(pre->next==NULL){pre=head2;//当现在扌旨向空吋跳出循环head1=he
此文档下载收益归作者所有