1、 课课 程程 设设 计计 (数据结构) 班 级 姓 名 学 号 指导教师 2013年 1 月 7 日 课程设计任务书及成绩评定课程设计任务书及成绩评定 课题名称课题名称 动态链表结构下的一元多项式的加法、减法和乘法的实现。动态链表结构下的一元多项式的加法、减法和乘法的实现。 、题目的目的和要求、题目的目的和要求: 1.巩固和加深对数据结构的理解,通过上机实验、调试程序,加深对课本知识的理 解,最终使学生能够熟练应用数据结构的知识写程序。 (1)通过本课程的学习,能熟练掌握几种基本数据结构的基本操作。 (2)能针对给定题目,选择相应的数据结构,分析并设计算法,进而给出问题的正 确求解过程并编写代
2、码实现。 2.设计题目要求: 1) 首先判定一元多项式是否稀疏 2) 分别采用顺序和链式结构实现; 3) 结果在 M(x)中无重复阶项和无零系数项; 4) 要求结果以升幂排列输出 、设计进度及完成情况、设计进度及完成情况 日 期 内 容 1.7-1.9 选取参考书,查阅有关文献资料,完成资料搜集和系统分析工 作。 1.10-1.12 创建相关数据结构,录入源程序。 1.13-1.15 调试程序并记录调试中的问题,初步完成课程设计报告。 1.16 上交课程设计报告打印版并进行课程设计答辩,要求每个同学 针对自己的设计回答指导教师 3-4 个问题。 1.17 考核结束后将课程设计报告和源程序的电子
3、版交班长统一刻 光盘上交。 、主要参考文献及资料、主要参考文献及资料 1 严蔚敏 数据结构(C 语言版)清华大学出版社 1999 2 严蔚敏 数据结构题集(C 语言版)清华大学出版社 1999 3 谭浩强 C 语言程序设计 清华大学出版社 4 与所用编程环境相配套的 C 语言或 C+相关的资料 、成绩评定:、成绩评定: 设计成绩: (教师填写) 指导老师: (签字) 二 年 月 日 目目 录录 第一章 概述1 第二章 系统分析2 第三章 概要设计3 第四章 详细设计4 第五章 运行与测试18 第六章 总结与心得20 参考文献21 1 第一章 概述 课程设计是实践性教学中的一个重要环节,它以某一
4、课程为基础,可以涉及和课程 相关的各个方面,是一门独立于课程之外的特殊课程。课程设计是让同学们对所学的课 程更全面的学习和应用,理解和掌握课程的相关知识。数据结构是一门重要的专业 基础课,是计算机理论和应用的核心基础课程。 数据结构课程设计,要求学生在数据结构的逻辑特性和物理表示、数据结构的选择 和应用、算法的设计及其实现等方面,加深对课程基本内容的理解。同时,在程序设计 方法以及上机操作等基本技能和科学作风方面受到比较系统和严格的训练。 在这次的课程设计中我选择的题目是动态链表结构下的一元多项式的加法、减法和 乘法的实现。一元多项式计算是用 C 语言设计一个一元多项式简单计算器。它能够实现
5、按指数升序排列建立并输出多项式,并且能够完成两个多项式的相加、相减与相乘的运 算和将其结果输入的功能。通过设计一元多项式,初步掌握软件开发过程的问题分析、 系统设计、程序编码、测试等基本方法和技能提高,综合运用所学的理论知识和方法独 立分析和解决问题的能力;加深对常用数据结构的理解,强化逻辑思维能力和动手能力, 巩固良好的编程习惯,掌握工程软件设计的基本方法,为后续课程的学习打下坚实基础。 2 第二章 系统分析 1 动态链表结构下的一元多项式的加法、减法、乘法的实现。可以分为几个模块:输入 模块、输出模块(升幂) 、数据处理模块(多项式的加减乘) 、主程序模块。 2 在程序执行过程中加入汉字提示符, 让使用者清楚明白的操作该程序。 运行程序时看 起来简洁有序,操作简单明了。 3 程序执行时的命令: 创建两个一元多项式输入第一个一元多项式的项数依次输 入一元多项式的系数和指数以相同方式输入第二个一元多项式数据处理输出 结果。 4 测试数据。输入的一元多项式系数指数分别为 7 0,3 1,9 8,5 17 和 8 1,22 7,-9 8。 加法结果为:7+11x+22x(7)+5x(17) 减法结果为:7-5x-22x(7)+18x(8)+5x(17) 5 乘法结果为: 56x+24x(2)+154x(7)+3x(8)+4