一元多项式的计算数据结构课程设计报告.doc

一元多项式的计算数据结构课程设计报告.doc

ID:58379007

大小:487.50 KB

页数:20页

时间:2020-05-04

一元多项式的计算数据结构课程设计报告.doc_第1页
一元多项式的计算数据结构课程设计报告.doc_第2页
一元多项式的计算数据结构课程设计报告.doc_第3页
一元多项式的计算数据结构课程设计报告.doc_第4页
一元多项式的计算数据结构课程设计报告.doc_第5页
资源描述:

《一元多项式的计算数据结构课程设计报告.doc》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、数据结构课程设计报告一元多项式的计算——主要用到的结构是链表班级:软件092班姓名:熊治景指导教师:董跃华井福荣成绩:信息工程学院年月日摘要本次试验依据理工大学09级数据结构实验要求,较完善的对题目进行了分析,理解和编程,程序思路清晰,考虑全面。对于此题,应该使用链式存储结构存储多项式的信息,并根据算法用C语言编程。同时在本书的后面附带了一部分程序源码和对程序的同步解释,为了更直观的对程序的理解,该书还运用了框架图,使读者能够更好地认识程序。在用C语言编程的时候,要用到的语句主要有函数调用语句,判断语句,输入和输出语句等。关键词:一

2、元多项式线性表指数目录1.引言-4-2.需求分析:-5-3.概要设计-5-4.详细设计-7-1.由大到小排序-7-2两多项式相加-7-3两多项式相减-9-5测试结果-11-1主菜单-11-2输入两个多项式-11-3将两多项式进行加减,并退出界面-12-6.调试分析-12-7.设计体会-12-8.结束语-13-9.参考文献-13-10.附录-13-一元多项式的计算1.引言本次课程设计的目的:是对数据结构所学容的进一步的理解与巩固,是将计算机课程与实际问题相联接的关键步骤。通过课程设计,能够提高分析问题、解决问题,从而运用所学知识解决实

3、际问题的能力。实验环境:Window2000及以上,c-free所有版本,Turbo2.0实验的任务要求:任务:能够按照指数降序排列建立并输出多项式;能够完成两个多项式的相加、相减,并将结果输入要求:1.完成需求分析2.画框架图3.编写算法4.用C语言编写程序5.调试2.需求分析:建立一元多项式并按照指数降序排列输出多项式,将一元多项式输入并存储在存中,能够完成两个多项式的加减运算并输出结果3.概要设计存储结构:一元多项式的表示在计算机可以用链表来表示,为了节省存储空间,只存储多项式中系数非零的项。链表中的每一个结点存放多项式的一个

4、系数非零项,它包含三个域,分别存放该项的系数、指数以及指向下一个多项式项结点的指针。创建一元多项式链表,对一元多项式的运算中会出现的各种可能情况进行分析,实现一元多项式的相加、相减操作。基本算法分析与设计:1.程序的基本功能:(1)创建两个一元多项式(2)两个多项式相加,得到一个新的多项式,可以按指数选择排序方式(3)两个多项式相减,得到一个新的多项式,可以按指数选择排序方式(4)退出2.系统总框图菜单退出主函数各功能函数链表结构按指数降序输出3.定义的函数及说明compare(terma,term)比较指数arrange(poly

5、nomailpa)由大到小排序print(polynomailP)输出多项式,求项数creat(polynomailP,intm)创建并初始化多项式链表add(polynomailpa,polynomailpb)两多项式相加sub(polynomailpa,polynomailpb)两多项式相减4.详细设计1.由大到小排序voidarrange(polynomailpa){polynomailh=pa,p,q,r;if(pa==NULL)exit(-2);for(p=pa;p->next!=NULL;p=p->next);r=p;f

6、or(h=pa;h->next!=r;)//小的沉底{for(p=h;p->next!=r&&p!=r;p=p->next)if(compare(p->next->next->data,p->next->data)==1){q=p->next->next;p->next->next=q->next;q->next=p->next;p->next=q;}r=p;}}}2两多项式相加polynomailadd(polynomailpa,polynomailpb){polynomails,newp,q,p,r;intj;p=pa->nex

7、t;q=pb->next;newp=(LNode*)malloc(sizeof(LNode));r=newp;while(p&&q){s=(LNode*)malloc(sizeof(LNode));switch(compare(p->data,q->data)){case-1:s->data.coef=p->data.coef;s->data.expn=p->data.expn;r->next=s;r=s;p=p->next;break;case0:s->data.coef=p->data.coef+q->data.coef;if(

8、s->data.coef!=0.0){s->data.expn=p->data.expn;r->next=s;r=s;}p=p->next;q=q->next;break;case1:s->data.coef=q->data.coef

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。