1、 课 程 设 计 报 告 书课 程 设 计 报 告 书 课程名称:课程名称: 数据结构与算法分析 题题 目目: 用 C 语言实现一元多项式的加减法计算 系系 名:名: 信息工程系 专业班级:专业班级: 姓姓 名名: 学学 号:号: 指导教师指导教师: 2012014 4年 1 1 月 3 3 日 1 课课 程程 设设 计计 任任 务务 书书 课程名称: 数据结构与算法分析 指导教师 班级名称: 开课系、教研室: 一、课程设计目的与任务 数据结构 课程设计是为训练学生的数据组织能力和提高程序设计能力而设置的增强 实践能力的课程。目的:学习数据结构课程,旨在使学生学会分析研究数据对象的特性,学 会
2、数据的组织方法, 以便选择合适的数据的逻辑结构和存储结构以及相应操作, 把现实世界 中的问题转换为计算机内部的表示和处理, 这就是一个良好的程序设计技能训练的过程。 提 高学生的程序设计能力、掌握基本知识、基本技能,提高算法设计质量与程序设计素质的培 养就是本门课程的课程设计的目的。 任务:根据题目要求,完成算法设计与程序实现,并按规定写出课程设计报告。 二、课程设计的内容与基本要求 设计题目:用 C 语言实现一元多项式的加减法计算 问题描述输入并建立两个多项式并输出多项式 设计一个程序:对两个多项式进行加、减法运算,建立一个新多项式并输出。 实现提示 :选择单链表存储多项式 具体要完成的任务
3、是: A. 编制完成上述问题的 C 语言程序、进行程序调试并能得出正确的运行结果。 B. 写出规范的课程设计报告书; 三、课程设计步骤及时间进度和场地安排 时间:本课程设计安排在第 18 周 地点:现代教育中心 具体时间安排如下: 第一天:布置题目,确定任务、查找相关资料 第二天第四天:功能分析,编写程序,调试程序、运行系统; 第五天上午:撰写设计报告; 第五天下午:程序验收、答辩。 四、课程设计考核及评分标准 课程设计考核将综合考虑学生的系统设计方案、运行结果、课程设计报告书的质量、态 度、考勤、答辩情况等各因素。具体评分标准如下: (1)设计方案正确,具有可行性、创新性; 30 分 (2)
4、系统开发效果较好; 20 分 2 (3)设计报告规范、课程设计报告质量高; 20 分 (4)课程设计答辩时,问题回答正确; 20 分 (5)态度认真、刻苦钻研、遵守纪律; 10 分 按上述五项分别记分后求和,总分按五级制记载最后成绩。 优秀(10090分) ,良好(8089分) ,中等(7079分) ,及格(6069分) , 不及格(059分) 3 1 1 设计题目设计题目 用 C 语言实现一元多项式的加减法计算 问题描述输入并建立两个多项式并输出多项式 2 2 开发环境、采用的语言开发环境、采用的语言 开发环境:vc6.0/windows xp 采用的语言:C 语言 3 3 设计思想设计思想
5、 我的设计思想是输入按幂项从大到小输入一元多项, 并将一元多项式相等幂项进行 加减运算, 在加法运算中将无相等幂项直接输入到结果单链表中, 在减法运算中将被减 的一元多项式的无相等幂项直接输入到结果单链表中, 将减项的一元多项式的无相等幂 项变号后输出到结果单链表中, 输入 2 个方程式之后可以得出 2 式相加、 相减的全部结 果, 也是简化了算法运行时间难度。 虽然浪费了一些计算能力, 但是简化了代码复杂度。 4 4 程序总的流程图程序总的流程图 图一:程序流程图 输入二个一元多项式 开始 计算两个一元 多项式的和差 输出计算结果和二个 输入的一元多项式 选择是在输入两个多项 式在运算或者结
6、束计算 结束 4 5 5 数据结构说明及模块算法说明数据结构说明及模块算法说明 数据结构说明:使用单链表来表示一元多项式: typedef struct linklist int mi; /mi是幂项 int xishu; /xishu是系数 struct linklist *next; /next *list; 6 6 模块算法说明模块算法说明 list creatpoly(void) 创建一个新的一元多项式,用 do 循环输入一元多项式,以“系数,幂项”的格式 输入数据,当系数与幂项同时为零时停止输入。 void printpoly(list head) 输出一个一元多项式,将多项式从头到尾输出,使用一个 IF 语句来