数据结构课程设计报告一元多项式加减乘除
更新时间:2023-11-24 10:30:01 阅读量: 教育文库 文档下载
多项式想加减与乘与升降序
学 院 计算机科学与技术 专 业 信 息 安 全 学 号 201312070 学 生 姓 名 陶宝中 辅导教师姓名
2014年12月 22 日
一、设计目的与内容
了解数据结构的与算法的设计方法,独立分析和设计一元多项式加减与乘除的程序编码,通过程序编写掌握软件开发过程的问题分析,系统设计,程序编码,测试等基本方法和技能,提高综合运用所学理论知识和方法独立分析和解决问题的能力,通过这次实践将实验问题中的所涉及的对象在计算机中表示出来并对他们进行处理,掌握线除 。
任务与分析
本课题主要的目的是分别采用顺序和动态存储结构实现一元多项式的加法、减法和乘法。并将操作结果分别按升序和降序输出
程序的主要功能 一元多项式创建
建立一元多项式的顺序表和链式表,按程序提示输入每个项数据结束创建。借助元素在存储器中的相对位置来表示数据元素之间的关系,顺序表中第i个位置表示一元多项式的第i项的系数为第i个位置存放的内容,指数为i-1。创建一个一元多项式顺序表,对一元多项式的运算中会出现的各种情况进行分析,实现一元多项式的相加、相减、相乘操作。用链表来表示只存储多项式中系数非零的项。链表中的每一个结点存放多项式的一个term项结构和指向下一个节点的指针域,term又包括系数和指数两个域分别存放该项的系数、。创建一元多项式链表,对一元多项式的运算中会出现的各种可能情况进行分析,实现一元多项式的相加、相减、相乘操作。
一元多项式的加法
对于两个一元多项式中所有指数相同的项,对应系数相加,若其和不为零,则构成“和多项式”中的一项;对于两个一元多项式中所有指数不相同的项,则分别复抄到和多项式中去。
一元多项式的减法
对于两个一元多项式中所有指数相同的项,对应系数相减,若其差不为零,则构成“和多项式”中的一项;对于两个一元多项式中所有指数不相同的项,将其按减法规则复抄到差多项式中去。
1
一元多项式的乘法
将乘法运算分解为一系列的加法运算利用两个一元多项式相加的算法实现。
一元多项式项的指数比较
比较相邻两项的指数的大小。按升序排列时,前面项的指数大于后面项的指数就交换其项的位置。按降序序排列时,后面项的指数大于前面项的指数就交换其项的位置。
一元多项式运算结果升降排序
一元多项式运算结果选择调用降序或升序排序函数。
一元多项式的输出
将选择的运算操作结果输出。
一元多项式的销毁
销毁已建立的两个多项式,释放空间。
3 程序运行平台
VC++6.0。 编译,链接,执行。 Windows XP。
4 总体设计
图4。1 系统总体框架图
主 函 数 创建多项式 多项式加法 多项式减法 多项式乘法 多项式升降序多项式 输出 2
5 程序类的说明
(1)Ploy结构声明
typedef struct //顺序表结构声明 {
int a[N];//记录多项式 int len;//记录多项式的长度 }Ploy;
(2)term结构声明
typedef struct //项的表示 { float coef; //系数 int expn; //指数 }term; (3)LNode结构声明
typedef struct LNode
{ term data; //term多项式值 struct LNode *next;
}LNode,*LinkList; //两个类型名
typedef LinkList polynomail; //用带头结点的有序链表表示多项式
6 模块分析
整个流程图如图所示:
3
图1
6.1 创建模块
6.1.1、链式存储结构的一元多项式的创建 程序源代码:
polynomail creatpolyn(polynomail P,int m) {
//输入m项的系数和指数,建立表示一元多项式的有序链表P polynomail r,q,p,s,Q; int i;
P=(LNode*)malloc(sizeof(LNode)); r=P;
for(i=0;i s=(LNode*)malloc(sizeof(LNode)); printf(\请输入第%d项的系数和指数:\ scanf(\ r->next=s; r=s; } r->next=NULL; 4
正在阅读:
数据结构课程设计报告一元多项式加减乘除11-24
中印国民性格比较03-08
我是男孩我骄傲作文800字07-02
二年级上册期末看图写话专项复习(含范文)06-01
医学英语新教材下册unit4翻译09-25
那一次我懂得了爱作文600字07-17
一个癌症病人家属的回忆录!03-06
郭敬明经典语录集锦11-20
大位移钻井液技术综述04-23
- exercise2
- 铅锌矿详查地质设计 - 图文
- 厨余垃圾、餐厨垃圾堆肥系统设计方案
- 陈明珠开题报告
- 化工原理精选例题
- 政府形象宣传册营销案例
- 小学一至三年级语文阅读专项练习题
- 2014.民诉 期末考试 复习题
- 巅峰智业 - 做好顶层设计对建设城市的重要意义
- (三起)冀教版三年级英语上册Unit4 Lesson24练习题及答案
- 2017年实心轮胎现状及发展趋势分析(目录)
- 基于GIS的农用地定级技术研究定稿
- 2017-2022年中国医疗保健市场调查与市场前景预测报告(目录) - 图文
- 作业
- OFDM技术仿真(MATLAB代码) - 图文
- Android工程师笔试题及答案
- 生命密码联合密码
- 空间地上权若干法律问题探究
- 江苏学业水平测试《机械基础》模拟试题
- 选课走班实施方案
- 多项式
- 加减乘除
- 数据结构
- 一元
- 课程
- 报告
- 设计
- 附答案 浙江大学宁波理工学院2015数据库系统原理期末考试试卷(A)
- 让“数”与“形”和谐交融
- 医用X射线设备项目商业计划书
- 国际欧巴产品知识培训
- 静海话简介
- 电厂检修锅炉试题(带答案)
- 钢轨探伤仪设定探伤灵敏度方法
- HTML 复习 题及参考答案
- 《湖南省建设工程计价办法》及消耗量标准解释汇总
- 花生新品种锦花11号及其高产栽培技术
- 奥鹏西工大16春《ERP原理与应用》平时作业
- 《仪器分析》实验讲义
- 北京公共交通控股(集团)有限公司第二保修分公司员工岗位规范考核管理实施细则相关条款公示
- 数据结构第九章习题课
- 东方汇景接收协议
- 久益矿业水泵联合试运转方案及安全技术措施()
- 中国背景下组织认同的结构一项探索性研究
- ACCESS数据库练习题
- 人教版高中语文(必修三)古诗文理解性默写精选试题含答案
- 《USB接口类移动电源技术要求》-ICS 13310