#include<stdio.h>
#include<stdlib.h>
typedef struct PolyNode{
int coef;
int expon;
struct PolyNode *next;
} *Polynomial;
Polynomial InitPolynomial();
void TraverseList(Polynomial l);
void CreatePolynomial(Polynomial l);
Polynomial PolyAdd(Polynomial p1, Polynomial p2);
Polynomial attach(int coef, int expon, Polynomial p);//
void main()
{
Polynomial p1, p2, p;
p1 = InitPolynomial();
CreatePolynomial(p1);
p2 = InitPolynomial();
CreatePolynomial(p2);
//TraverseList(p1);
//TraverseList(p2);
p = PolyAdd(p1, p2);
p = p->next;//结果多项式p中有头结点,在打印元素时需要跳过头结点。
TraverseList(p);
}
//初始化多项式(即分配一个内存空间 因为多项式中并不含头结点,所以插入数据时要先使用该内存空间)
Polynomial InitPolynomial()
{
Polynomial p;
p = (Polynomial)malloc(sizeof(PolyNode));
if (!p)
{
printf("初始化失败");
exit(1);
}
p->next = NULL;
return p;
}
//遍历函数
void TraverseList(Polynomial l)
{
Polynomial r = l;
printf("多项式
单链表的应用——多项式加法的C语言实现(链式存储结构)
最新推荐文章于 2022-07-16 22:54:53 发布
本文介绍了如何使用C语言实现基于单链表的多项式加法操作,详细阐述了链式存储结构在多项式运算中的应用。
摘要由CSDN通过智能技术生成