西安郵電大学数据结构设计报告题 目: 多项式相乘院系名称: 计算机学院 专业名称: 软件工程班 级: 学生姓名: 学号(8 位): 指导老师: 设计起止时间:一
设计目的以动态单链表为存储结构,使用排序等操作实现多项式的乘法运算二
设计内容用一个单链表来表示一个一元多项式;在创建多项式的过程中,可以按指数的任意顺序输入,并且可在同一多项式中输入指数相同的多个项;在进行乘法操作之前,输出参加操作的两个多项式
要求输出的多项式按指数升序排列,同指数的多项合并,项数的正负号显示合理
对已排序且合并了同指数项的两个多项式实现乘法操作,并输出结果;结果多项式要求以动态链表为存储结构,复用原多项式的结点空间;输出结果多项式要求按指数升序排列,同指数的多项要合并,项数的正负号要求显示合理
三.概要设计1.功能模块图; 2.各个模块详细的功能描述
多项式链表升序排序函数Polylist Polysort(Polylist head)根据幂次的高低排序的同时并合同类项,幂次相同的系数相加存入前项,释放合并项中后者空间,若系数相加和为 0 则释放两项空间
多项式创建函数Polylist creat()多项式相乘函数Polylist Polymul(Polylist LA,Polylist LB)输出函数void print(Polylist head)分三种情况:系数输出、符号输出、指数输出主函数 main()创建多项式 LA=creat()创建多项式 LB=creat()调用 Polysort( ) 排序调用 Polysort( ) 排序调 用 print() 输 出LA调 用 print() 输 出LB对多项式 LA,LB 相乘 LC=Polymul(LA,LB)调用 Polysort( ) 排序调 用 print() 输 出LC四.详细设计1
各功能函数的数据流程图 Y N N y