这篇文章主要介绍“C语言如何实现多项式相加”,在日常操作中,相信很多人在C语言如何实现多项式相加问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”C语言如何实现多项式相加”的疑惑有所帮助!接下来,请跟着小编一起来学习吧!
具体代码如下:
//多项式的相加和相乘#include<stdio.h>#include<stdlib.h>#pragmawarning(disable:4996)//兼容scanftypedefstructnode{intcoef;intexpon;structnode*link;}Polynode,*Polynomial;PolynomialInsertPolyLinklist(Polynomialin,PolynomialPread){Pread->link=in;Pread=in;in->link=NULL;returnPread;}PolynomialReadPoly(void){PolynomialPread=(Polynomial)malloc(sizeof(Polynode));Pread->link=NULL;PolynomialH=Pread;intN;scanf("%d",&N);while(N--){Polynomialp=(Polynomial)malloc(sizeof(Polynode));scanf("%d%d",&p->coef,&p->expon);Pread=InsertPolyLinklist(p,Pread);}PolynomialF;F=H->link;free(H);returnF;}voidPrintPoly(PolynomialF){while(F!=NULL){printf("%d%d",F->coef,F->expon);F=F->link;}printf("\n");}PolynomialAdd(Polynomialp1,Polynomialp2){Polynomialt1=p1,t2=p2;Polynomialp=(Polynomial)malloc(sizeof(Polynode));p->link=NULL;Polynomialq=p;Polynomialread;while(t1&&t2){if(t1->expon==t2->expon){if(t1->coef+t2->coef){t1->coef=t1->coef+t2->coef;t1->expon=t1->expon;read=t1;q->link=read;q=read;t1=t1->link;t2=t2->link;}}else{if(t1->expon>t2->expon){read=t1;q->link=read;q=read;t1=t1->link;}else{if(t1->expon<t2->expon){read=t2;q->link=read;q=read;t2=t2->link;}}}}if(t1){q->link=t1;}if(t2){q->link=t2;}PolynomialF=p->link;free(p);returnF;}intmain(void){Polynomialp1,p2,pp,ps;p1=ReadPoly();PrintPoly(p1);p2=ReadPoly();PrintPoly(p2);pp=Add(p1,p2);PrintPoly(pp);//ps=Mult(p1,p2);//PrintPoly(ps);return0;}
到此,关于“C语言如何实现多项式相加”的学习就结束了,希望能够解决大家的疑惑。理论与实践的搭配能更好的帮助大家学习,快去试试吧!若想继续学习更多相关知识,请继续关注恰卡编程网网站,小编会继续努力为大家带来更多实用的文章!
C/C++如何获取CAN信号
C语言怎么通过二分查找实现猜数字游戏
C语言数据结构中的线性表怎么使用
C语言的数据结构怎么理解
C语言的数据结构怎么理解这篇文章主要介绍了C语言的数据结构怎么理解...
C语言与C++中内存管理的方法
C语言链式队列与循环队列怎么实现
C语言冒泡排序怎么实现
C语言如何实现斐波那契数列
C语言如何实现斐波那契数列这篇文章主要介绍了C语言如何实现斐波那契...
C语言如何实现无符号数和有符号数间的运算
C语言中常用的头文件是什么
C语言中常用的头文件是什么这篇文章主要介绍“C语言中常用的头文件是...
用户名
密码
记住登录状态 忘记密码?
邮箱
确认密码
我已阅读并同意 用户协议