南京工程学院
课程设计说明书论文
题目一元多项式计算
课程名称数据结构
院系、部、中心通信工程
专业计算机通信
班级算通111
学生姓名余丹红
学号
设计地点信息楼322
指导教师郝慧珍
设计起止时间2012年12月17日至2012年12月18日
f目录
1设计目标1
2总体设计1
21数据结构描述与定义1
22模块设计2
3测试结果与分析11
4课程设计总结13
参考文献15
附录A源程序清单15
f1设计目标
通过课程设计达到理论与实际应用相结合提高学生组织数据及编写大型程序的能力使学生能够根据数据对象的特性掌握数据组织、算法设计、算法性能分析的方法并培养良好的程序设计能力。
本程序是利用单链表来表示一元多项式然后实现各项指数和系数的输入进行多项式建立并以多项式的形式输出实现多项式的相加相减和多项式的相乘这三种运算。
2总体设计
21数据结构描述与定义
一元多项式定义系数和指数结构如下
coef域存放结点的系数值
exp
域存放结点的指数值
ext域存放结点的直接后继的地址位置的指针域链域定义多项式的结构为线性链表的存储结构每个结点包含三个元素系数coef指数exp
和指向下一个结点的指针
ext。通过指针我们就可以把多个单项式连接起来形式一个多项式需要说明的是从广义的角度讲单项式也是一个多项式。基于以上的分析我们定义多项式的数据结构为如下结构体形式typedefstructPoly
omial
floatcoef系数
i
texp
指数
structPoly
omial
ext下一个指针
Poly
Poly
omialPoly
结构体变量名
f22模块设计
从实现多项式式运算过程的角度来分析至少需要这样一些子功能模块。
①多项式创建功能
②多项式销毁功能
③多项式输出功能
④多项式的相加功能
⑤多项式的相减功能
⑥多项式的相乘功能
定义并调用的函数有
voidI
sertPoly
pPoly
h将结点p插入链表h
Poly
CreatePoly
Poly
headi
tm创建链表多项式
voidDestroyPoly
Poly
p销毁
voidPri
tPoly
Poly
P输出
Poly
AddPoly
Poly
paPoly
pbab
Poly
SubtractPoly
Poly
paPoly
pbab
Poly
MultiplyPoly
Poly
paPoly
pbab
voidmai
主函数
系统共分几个模块每个模块的算法描述及流程图核心模块
1系统模块图模块划分
f图1系统模块划分图
2模块流程图及算法描述
①分模块流程图
1多项式的创建2多项式的销毁
fff5多项式的相减6多项式的相乘
f②算法描述
1多项式的创建
Poly
CreatePoly
Poly
headi
tm
建立一个头指针为head、项数为m的一元多项式
在主程序初始时先输入的多项式中的项数m、
在这里为m。主r