


全文预览已结束
下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
/* PolyAdd.C - 多项式相加,两个多项式采用的是链式存储结构注意:多项式按照指数递增或递减输入for example:endter la,lb:4,5creat HAenter coef,exp:6,54,4-3,28,0A(x)=6x5+4x4+-3x2+8creat HBenter coef,exp:-9,53,48,22,1-89,0B(x)=-9x5+3x4+8x2+2x1+-89A(x)+B(x)=-3x5+7x4+5x2+2x1+-81*/C完整程序#include stdio.h#include conio.h#include stdlib.h/多项式中的数据项的数据类型定义typedef struct polynode int coef;/系数 int exp;/指数 struct polynode *next;/下一个数据项的地址 PNode;/三个函数的声明PNode * Creat_Linkst(int n);/创建多项式的函数void PolyAdd(PNode *pa,PNode *pb);/多项式相加的函数void Print_Linkst(PNode *H);/打印多项式的函数main() PNode *HA,*HB;/HA表示多项式la的头指针, HB项式lb的头指针 int la,lb;/la表示多项式la有几个数据项;la表示多项式lb有几个数据项 printf(endter la,lb:); scanf(%d,%d,&la,&lb);/输入两个多项式所含有的数据项的个数 printf(ncreat HAn); HA=Creat_Linkst(la);/调用创建多项式的函数,创建多项式la printf(A(x)=); Print_Linkst(HA);/调用输出多项式的函数,输出多项式la printf(ncreat HBn); HB=Creat_Linkst(lb);/调用创建多项式的函数,创建多项式lb printf(B(x)=); Print_Linkst(HB);/调用输出多项式的函数,输出多项式lb PolyAdd(HA,HB);/调用两个多项式相加函数,完成多项式la与lb的相加 printf(nA(x)+B(x)=); Print_Linkst(HA);/输出两个多项式相加的结果 getch();PNode * Creat_Linkst(int n)/形式参数n表示的是多项式有几项。/创建多项式的函数 PNode *head,*p,*s;/head指向的是头结点,p始终指向尾结点,s是新建立一个结点地址 int i; head=(PNode *) malloc(sizeof(PNode);/创建头结点,并用head指向头结点 head-next=NULL; p=head; printf(enter coef,exp:n); for(i=1;icoef,&s-exp);/给结点输入系数和指数 s-next=NULL; p-next=s;p=s; return(head);/返回多项式的头结点void PolyAdd(PNode *pa,PNode *pb)/多项式的相加函数,把多项式lb中的数据项和la的数据项相加,结果存放在多项式la中 PNode *pre,*qa,*qb,*q;/ int sum; pre=pa;/pre始终指向正在操作的结点的前驱结点 qa=pa-next;/qa指向la的首原结点 qb=pb-next;/qb指向lb的首原结点 while(qa&qb)/当两个多项式中的数据项都还没有比较完的时候,条件成立 if(qa-exp=qb-exp)/当两个多项式的某一个数据相的指数相同时,进行加操作 sum=qa-coef+qb-coef;/指数相同的情况下系数相加 if(sum)/如果相加的和不为零,条件成立 qa-coef=sum;pre=qa;/把两个系数相加的结果存放到la多项式相应的数据项的系数域中 else/否则两个系数相加为零,删除该结点 pre-next=qa-next;free(qa); qa=pre-next; q=qb;qb=qb-next;free(q); else /否则两个多项式的的数据项的指数不相等 if(qa-expqb-exp)pre=qa;qa=qa-next; else pre-next=qb;pre=qb; qb=qb-next;pre-next=qa; if(qb) pre-next=qb; free(pb);void Print_Linkst(PNode *H) PNode *p; p=H-next; while(p-next) printf(%dx%d,p-coe
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 【淮安】2025年江苏淮安市金湖县事业单位公开招聘工作人员96人笔试历年典型考题及考点剖析附带答案详解
- 第四章氧化还原反应第四节元素标准电极电势图及其应用无机化学
- 第三节组合体本节主要内容00课件
- 云霓课件教学设计
- 小学生科普显微镜课件
- 2025年小学语文教师招聘考试测试卷及答案
- 基金从业人员资格考试资料2025年含答案
- 2025矿山开采项目社会稳定风险评估与风险评估产业创新报告
- 口才课件自我介绍模板
- 企业房产租金管理办法
- 《尿路感染诊治指南》课件
- 特征值优化设计-洞察分析
- 市场营销策划岗位招聘笔试题与参考答案(某大型央企)
- 2024年高考英语新课标1卷读后续写教学设计
- 市医院开展“小金库”专项治理工作方案
- PDCA提高便秘患者肠镜检查肠道准备合格率
- 淮南新东辰控股集团有限责任公司招聘笔试题库2024
- 03D201-4 10kV及以下变压器室布置及变配电所常用设备构件安装
- 人民网删除稿件(帖文)申请登记表
- (正式版)YBT 6328-2024 冶金工业建构筑物安全运维技术规范
- 诊所中药饮片清单
评论
0/150
提交评论