数据结构一元多项式

上传人:kms****20 文档编号:37973028 上传时间:2018-04-25 格式:DOC 页数:23 大小:1MB
返回 下载 相关 举报
数据结构一元多项式_第1页
第1页 / 共23页
数据结构一元多项式_第2页
第2页 / 共23页
数据结构一元多项式_第3页
第3页 / 共23页
数据结构一元多项式_第4页
第4页 / 共23页
数据结构一元多项式_第5页
第5页 / 共23页
点击查看更多>>
资源描述

《数据结构一元多项式》由会员分享,可在线阅读,更多相关《数据结构一元多项式(23页珍藏版)》请在金锄头文库上搜索。

1、 数据结构数据结构 课课程程设计报设计报告告系系 别:别:计算机与电子系计算机与电子系 专业班级:专业班级:电子电子 0802 班班 学生姓名:胡锦奎(学生姓名:胡锦奎(20081185055)指导教师:指导教师:程海英程海英 (课程设计时间:20 10 年 12 月 27 日20 11 年 1 月 7 日)华中科技大学武昌分校华中科技大学武昌分校目目 录录1 1课程设计目的课程设计目的3 3 页页2 2课程设计题目描述和要求课程设计题目描述和要求 33 页页3 3课程设计报告内容课程设计报告内容55 页页3.13.1 一元多项式运算一元多项式运算的实现的实现 55 页页3.23.2 迷宫问题

2、实现迷宫问题实现 99 页页3.33.3 校园导游咨询校园导游咨询1313 页页3.43.4 跳舞搭配问题跳舞搭配问题1515 页页3.53.5 利用栈实现表达式求值利用栈实现表达式求值1818 页页4 4总结总结 2020 页页参考文献参考文献 2121 页页(要求:目录题头用三号黑体字居中书写,隔行书写目录内容。目录中各级题序及标题用小四号黑体)一课程设计目的:一课程设计目的: 数据结构课程设计是在学完数据结构课程之后的实践教学环节.该实践教学是软件设计的综合训练,包括问题分析,总体结构设计,用户界面设计,程序设计基本技能和技巧。要求学生在设计中逐步提高程序设计能力,培养科学的软件工作方法

3、.学生通过数据结构课程设计在各方面得到锻炼 二课程设计题目描述和要求:二课程设计题目描述和要求:1一元多项式加法、减法、乘法运算的实现1)设计内容:完成两个一元多项式作加法、减法、乘法,给出明确的等式形式。完成总体设计,搭好框架,确定人机对话的界面,确定函数个数;函数功能要划分好,总体设计应画流程图,程序一定要经得起测试2)设计要求(1)用 C 语言编程实现上述实验内容中的结构定义和算法。(2)要有 main()函数,并且在 main()函数中使用检测数据调用上述算法。(3)用 switch 语句设计如下选择式菜单。*数据结构综合性实验*一、多项式的加法、减法、乘法运算* 1.多项式创建 *

4、2.多项式相加 * 3.多项式相减 * 4.多项式相乘 * 5.清空多项式 * 0.退出系统 * 请选择(05) *请选择(0-5):。2迷宫求解1)设计内容:以一个 m*n 的长方形矩阵表示迷宫,0 和 1 分别表示迷宫中的通路和障碍。设计一个程序,对任意设定的迷宫,求出一条从入口到出口的通路,或得出没有通路的结论。2)设计要求(1)用 C 语言编程实现上述实验内容中的结构定义和算法;(2)要有 main()函数,并且在 main()函数中使用检测数据调用上述算法;3、校园导游咨询1)设计内容:设计一个校园导游程序,为来访的客人提供各种信息咨询服务,包括:(1)设计所在的学校的校园平面图,所

5、含景点不少于 5 个。以图中顶点表示校内各景点,存放景点的名称、代号、简介等信息;以边表示路径,存放路径长度等相关信息。(2)为来访客人提供图中任意景点相关信息的咨询。(3)为来访客人提供图中任意景点的问路查询,即查询任意两个景点之间的一条最短的简单路径2)设计要求:(1)用 C 语言编程实现上述实验内容中的结构定义和算法;(2)要有 main()函数,并且在 main()函数中使用检测数据调用上述算法;(3)用 switch 语句设计如下选择式菜单4、跳舞配对问题设计内容与要求:一共有 m 个女生,有 n 个男生(且 mn) ,现要开一个舞会,男女分别编号坐在舞池的两边的椅子上。每曲开始时,

6、依次从男和女中各出一个人配对跳舞,本曲没成功配对者坐着等待下一曲找舞伴。设计一系统模拟动态地显示出上述过程,要求如下:1)输出每曲配对情况;2)计算出任何一个男(编号为 X)和任意一个女(编号为 Y) ,在第 K 曲配对跳舞的情况,至少求出 K 的两个值。5、实现表达式求解设计内容:输入一个表达式,按如下要求完成其求值运算:1)表达式中允许有两种括号:(、 ) 、,请验证其匹配成对的合法性;2)运算符限定于加、减、乘、除四种运算,请验证表达式是否书写合法,如 3+2-*5 就不是一个合法表达式;3)使用栈的原理实现表达式求值;4)尽量考虑参与运算的数是非 1 位数,如 234+32*12。三课

7、程设计报告内容三课程设计报告内容1 1 一元多项式加法,减法,乘法运算的实现一元多项式加法,减法,乘法运算的实现1.1 数据结构设计根据下面给出的存储结构定义:#define MAXSIZE 20 /定义线性表最大容量/定义多项式项数据类型typedef structfloat coef; /系数int expn; /指数 term,elemType;typedef structterm termsMAXSIZE; /线性表中数组元素int last; /指向线性表中最后一个元素位置 SeqList;typedef SeqList polynomial;1.2 基本操作函数说明 polynom

8、ial*Init_Polynomial();/初始化空的多项式int PloynStatus(polynomial*p)/判断多项式的状态 int Location_Element(polynomial*p,term x)在多项式 p 中查找与 x 项指数相同的项是否存在int Insert_ElementByOrder(polynomial*p,term x)/在多项式 p 中插入一个指数项 xint CreatePolyn(polynomial*P,int m)/输入 m 项系数和指数,建立表示一元多项式的有序表 pchar compare(term term1,term term2)/比

9、较指数项 term1 和指数项 term2polynomial*addPloyn(polynomial*p1,polynomial*p2)/将多项式 p1 和多项式 p2 相加,生成一个新的多项式polynomial*subStractPloyn(polynomial*p1,polynomial*p2)/多项式 p1 和多项式 p2 相减,生成一个新的多项式polynomial*mulitPloyn(polynomial*p1,polynomial*p2)/多项式 p1 和多项式 p2 相乘,生成一个新的多项式void printPloyn(polynomial*p)/输出在顺序存储结构的多项

10、式 p1.3 设计思路及算法设计(1) 一元多项式的建立 :输入多项式采用头插法的方式,输入多项式中一个项的系数和指数(2) 显示 输入的数字:显示你输入的各项式的指数和系数。(3).一元多项式加 减法和乘法 运算进行加减法和乘法 的运算后得到的简化的一元多项式可以用一个核心函数addPloyn 来实现多项式的加法,它把p1 所指向的多项式加 p2 所指向的多项式 ,结果为 p3 所指的多项式。相加时,首先设两个指针变量 p1 和 p2 分别从多项式中的首项开始扫描,比较p1 和 p2 所指结点指数域的值,可能出现下面三种情况之一:A,p1-terms【i】大于 p2-terms【j】 ,则

11、p1 继续向后扫描。B,p1-terms【i】等于 p2-terms【j】 ,则将其系数相加。若结果不为零,将结果放入 p3-terms【k】中,否则同时删除 p1 和 p2 所指结点。然后 p1 和 p2 继续向后扫描C,p1-terms【i】小于 p2-terms【j】 ,则将 p3 所指结点插入 p2 所指结点之前,然后 p1,p2 继续向后扫描减法的算法实现和加法类似,乘法的算法实现是让系数想乘,指数部分相加 (4).一元多项式 输出和整理以降幂的形式输出1.4 功能模块图主函 数建立链 表排列和 组件相加减 或相乘入 输组成多 项式1.5 源代码分析见电子档1.6 测试与结果2 2. .迷迷宫宫问问题题实实现现2.1 数据结构设计根据以上问题给出存储结构定义: typedef struct

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 生活休闲 > 科普知识

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号