- 1、本文档共20页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
一元多项式的加法减法乘法的实现
福建农林大学计算机与信息学院
课程设计报告
课程名称: 数据结构 课程设计题目: 一元多项式的加法减法乘法的实现 姓 名: 系: 软件工程系 专 业: 软件工程专业 年 级: 2014 学 号: 指导教师: 黄思先 职 称: 副教授 完成起止日期: 2016.6.5 - 2016.7.1
2016年07月1日
福建农林大学计算机与信息学院
课程设计结果评定
评价内容 评价指标 评分权值 评定成绩 业务水平
有扎实的基础理论知识和课程知识;能正确设计实验方案;独立进行实验工作;能运用所学课程知识和技能去发现与解决实际问题
0.2 设计质量
实验正确,分析处理科学;设计结果有应用价值;图纸绘制符合国家标准,质量符合要求;计算及测试结果准确;工作中有创新意识;对前人工作有改进或突破,或有独特见解;
0.4 工作量、
工作态度
按期完成规定的任务,工作量饱满,难度较大;工作努力,遵守纪律;工作作风严谨务实 0.2 报告质量 文字通顺,技术用语准确,符号统一,编号齐全,书写工整规范,图表完备、整洁、正确; 0.2 合 计 1.0 指导教师签字: 评定日期:
目录
问题分析程序设计内容实验心得
五、 程序编码…………………………………………………………9
一、问题分析及任务定义
顺序结构、动态链表结构下的一元多项式的加法、减法、乘法的实现。
【问题描述和基本要求】 设有一元多项式Am(x)和Bn(x).
Am(x)=A0+A1x1+A2x2+A3x3+… +Amxm
Bn(x)=B0+B1x1+B2x2+B3x3+… +Bnxn
请实现求M(x)= Am(x)+Bn(x)、M(x)= Am(x)-Bn(x)和M(x)= Am(x)×Bn(x)。
要求:
1) 首先判定多项式是否稀疏
2) 分别采用顺序和动态存储结构实现;
3) 结果M(x)中无重复阶项和无零系数项;
4) 要求输出结果的升幂和降幂两种排列情况
二、课程设计的内容
2.1函数
多项式创建函数PolyNode *Creatpoly()多项式输出函数void Prin_poly(PolyNode *h)多项式升序排列函数void Insortup(PolyNode *h)多项式降序排列函数void Insort(PolyNode *h)
多项式合并函数void UnitePoly(PolyNode *h)多项式相乘函数PolyNode *polymuti(PolyNode *h1,PolyNode *h2)多项式相加函数PolyNode *addition(PolyNode *ha, PolyNode *hb)多项式相减函数PolyNode *subduction (PolyNode *ha, PolyNode *hb)
(2) void Insortup(PolyNode *h)
(3)void Insortdown(PolyNode *h)
(4) PolyNode *polymuti(PolyNode *h1,PolyNode *h2)
(5)void UnitePoly(PolyNode *h)
(6) PolyNode *addition(PolyNode *ha, PolyNode *hb)
三、程序调试与测试
相加结果
相减结果
相乘结果
实验心得
在本次课程设计中,我明白了理论应与实际相结合,上机练习是提高编程能力最有效的办法,这次实验提高了我编写大型程序的能力以及查阅资料并从中获得有效资料的能力。这次课程设计加深了我对数据结构的进一步理解。
#includestdio.h
#include stdlib.h
#include conio.h
typedef struct Node
{
int coef;//系数
int exp;//指数
struct Node *next;
}PolyNode;
PolyNode *Creatpoly()//创建多项式的单链表
{
PolyNode *h,*p,*q;
h=(PolyNode *)malloc(sizeof(PolyNode));
p=h;
p-next=NULL;
printf(请输入多项式的系数及其指数a b,当系数输入0时停止输入\n);
q=(PolyNode *)malloc(sizeof(PolyNode));
文档评论(0)