多项式_代码.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
多项式_代码

#includestdio.h #includemalloc.h #includestdlib.h #define OK 1 #define ERROR 0 #define OVERFLOW -1 //定义多项式的项 typedef int Status; typedef struct { float coef; int expn; }PolyTerm,ElemType;//定义结构体各项所需元素 typedef struct PolyNode{ PolyTerm data;//将每一项封装一下 struct PolyNode *next; }PolyNode,*PolyList; void menu() //主菜单 { printf(\n); printf(--------主 菜 单----------\n); printf( 1.输出多项式 \n); printf( 2.多项式求导 \n); printf( 3.多项式求积分 \n); printf( 4.计算函数值 \n); printf( 5.多项式相加 \n); printf( 6.多项式相减 \n); printf( 7.多项式相乘 \n); printf( 0.退出 \n); printf(--------------------------------\n); } void Insert(PolyNode *p,PolyList L) //小项p插入到多项式H中,使得该多项式为指数降序 { if(p-data.coef==0) free(p); //系数为0,即该小项为空,则删除该结点即释放该结点空间 else { PolyNode *q1,*q2; q1=L; q2=L-next; while(q2 p-data.expn q2-data.expn) //查找插入位置 { q1=q2; q2=q2-next; } if(q2 p-data.expn == q2-data.expn) //将指数相同项合并 { q2-data.coef = q2-data.coef +p-data.coef; free(p); //删除p结点 if(!q2-data.coef) //系数为0,则释放结点 { q1-next=q2-next; free(q2); } } else //新指数,将结点插入 { p-next=q2; q1-next=p; } } } PolyList CreatePolyn(PolyList L,int m) { //建立多项式,m为项数 int i; PolyNode *p; p=L=(PolyList)malloc(sizeof(PolyNode)); L-next=NULL; for(i=0;im;i++) { p=(PolyNode*)malloc(sizeof(PolyNode));//建立新结点以接收数据 printf(请输入第%d项的系数与指数:,i+1); scanf(%f %d,p-data.coef,p-data.expn); Insert(p,L); //调用Insert函数插入结点p } return L; //返回该多项式 } void DestroyPolyn(PolyList L) //销毁多项式,从头结点开始逐项删除各个结点 { PolyNode *q1,*q2; q1=L-next; q2=q1-next; while(q1-next) { free(q1); q1=q2; q2=q2-next; } } int PrintPolyn(Po

文档评论(0)

xcs88858 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

版权声明书
用户编号:8130065136000003

1亿VIP精品文档

相关文档