- 49
- 0
- 约4.66千字
- 约 12页
- 2017-05-02 发布于河南
- 举报
实验报告——2 一元稀疏多项式计算器
PAGE
PAGE 12
华北水利水电学院 一元稀疏多项式计算器 实验报告
2010~2011学年 第 一 学期 09 级 计算机科学与技术 专业
班级: 2009119 学号: 200911902 姓名: 万婷婷
实验目的
设计一个医院稀疏多项式简单计算器
熟练掌握线性表的基本操作在两种存储结构上的实现,其中以各种链表的操作和应用
实验要求
输入并建立多项式
输出多项式,输出形式为整数序列:n,c1,e1,c2,e2……cn,en,其中n是多项式的项数,ci,ei分别为第i项的系数和指数。序列按指数降序排列。
多项式a和b相加,建立多项式a+b,输出相加的多项式。
多项式a和b相减,建立多项式a-b,输出相减的多项式。
用带表头结点的单链表存储多项式。
测试数据:
(1) (2x+5x8-3.1x11)+(7-5x8+11x9)
(2) (6x-3-x+4.4x2-1.2x9)-(-6x-3+5.4x2+7.8x15)
(3)(1+x+x2 +x3 +x4 +x5 )+( -x3- x4)
(4)(x+x2+x3)+0
(5)(x+x3)-(-x-x-3)
(6) (x+x2 +x3 )+0
三、实验内容
主要算法设计
typedef struct Node
{
float coef;
int index;
struct Node *next;
}LinkList;
本程序涉及到多项式的建立、多项式的输出、两个多项式的相加减。
用带头结点的单链表存储多项式;
程序中共定义了5个函数:
void Insert(LinkList *p,LinkList *h)//把节点p插入到链表h中
LinkList *Creat_L(LinkList *head,int m)//创建一个链表,项数为m
void Printf(LinkList *L)
LinkList *ADDlist(LinkList *head,LinkList *pb)
LinkList *MinusList(LinkList *head,LinkList *pb)
四、程序源代码
#includeiostream.h
#includemalloc.h
#includestdio.h
#includestdlib.h
typedef struct Node
{
float coef;
int index;
struct Node *next;
}LinkList;
void Insert(LinkList *p,LinkList *h)//把节点p插入到链表h中
{
LinkList *q1,*q2;
int flag=0;
q1=h;
if(p-coef==0)
free(p);
else
{
if(q1-next==NULL)
{
q1-next=p;
}
else
{
q2=q1-next;
while(flag==0)
{
if(p-indexq2-index)
{
if(q2-next==NULL)
{
q2-next=p;
flag=1;
}
else
{
q1=q2;
q2=q2-next;
}
}
else
if(p-indexq2-index)
{
p-next=q2;
q1-next=p;
flag=1;
}
else
{
q2-coef=p-coef+q2-coef;
if(q2-coef==0)
{
q1-next=q2-next;
free(q2);
}
flag=1;
free(p);
}
}
}
}
}
LinkList *Creat_L(LinkList *head,int m)//创建一个链表,项数为m
{
int i;
LinkList *q;
head=(LinkList *)malloc(sizeo
您可能关注的文档
最近下载
- LTC流程培训课件.pptx VIP
- 2026年郑州工业安全职业学院单招职业适应性测试题库及答案1套.docx VIP
- 【小升初】2023-2024学年江苏省南通市苏教版升学分班考数学模拟测试题2套(含解析).pdf VIP
- 安徽省考试录用公务员公安类真题及参考答案.doc VIP
- 人教版(2024)八年级上册英语全册各单元阅读理解练习题汇编(含答案).docx
- 36岁儿童学习与发展指南解读.doc VIP
- 2026年郑州工业安全职业学院单招职业技能考试题库及答案详解1套.docx VIP
- 《国家标准》羊肉分割技术规范.doc VIP
- EPSS怡达快速电梯TRE110电气原理图纸(2014版).pdf
- 2026年郑州工业安全职业学院单招职业技能测试题库及答案1套.docx VIP
原创力文档

文档评论(0)