电脑桌面
添加小米粒文库到电脑桌面
安装后可以在桌面快捷访问

数据结构课程设计,一元多项式VIP免费

数据结构课程设计,一元多项式_第1页
1/14
数据结构课程设计,一元多项式_第2页
2/14
数据结构课程设计,一元多项式_第3页
3/14
湖南工学院课程设计一元多项式计算班级:信息本1002学号:09姓名:班级:信息本1002学号:26姓名:班级:信息本1002学号:34姓名:班级:信息本1002学号:41姓名:目录一、课题任务错误!未定义书签。二、概要设计错误!未定义书签。三、详细设计错误!未定义书签。四、调试分析错误!未定义书签。五、测试结果错误!未定义书签。六、课程设计总结错误!未定义书签。七、参考文献错误!未定义书签。八、附录错误!未定义书签。一、课题任务功能:1).能够按照指数降序排列建立并输出多项式;2).能够完成两个多项式的相加,并将结果输出;3).能根据输入的多项式及变量的值,能进行计算。并输出计算结果。4).能对多个输入的表达式按照指数大小排序输出。二、概要设计三、详细设计一元多项式定义系数和指数结构如下:coef域--存放结点的系数值expn域--存放结点的指数值next域--存放结点的直接后继的地址(位置)的指针域(链域)coefexpnnext一元多项式计算系统降序排列建立并输出多项式多项式的相加减并输出结果输入的多项式及变量的值计算多个表达式按照指数大小排序输出按指数排序建立多项式相减建立多项式相加计算多项式建立多个多项式输出多式项或计算值排序后输出多个多项式排序一元多项式单链表存储结构:typedefstructterm{floatcoef;开始从键盘输入项数mm<=0返回空定义存储多项式数据类型term动态分配空间完成建立多项式降次排序输出YN开始定义存储和链表h动态分配空间Pb=Pb->coef*(-1)两多项式相加输出PbPb=pb->nextYN按指数排序将k个有序多项式用数组G[i]保存输入多项式个数k输出开始完成多项式计算sum+=q->coef*pow(x,q->expn)returnsum;q=q->next输入变量x的值q不空输出开始YN定义存储和链表h动态分配空间Pa&&PbC=a->expn-b->expnh==UNLL返回系统C>=1C>=0h=PbPb=Pb->next;h=PaPa=Pa->next;sum=Pa->coef+Pb->coef;sum==0Pa->coef=sum;h=Pa;Pa=Pa->next;Pa=Pa->next;Pa==0Pb==0h->next=Pa;h->next=Pa;h=h->next;ReturnhNYNYNYNYYNYYNN输出开始完成多项式相加调用函数查找同类项同类项系数相加进行合并合并后检查ab扫描是否完整putchar(‘1’)printf(“x^%d”,q->expn)Putchar(‘x’)q->expn==0p=p->nextputchar(‘0’);开始printf(“%g”,q->coef)q!=UNLLq->coef!=1q->expn==1q->coef>=0q!=UNLLPutchar(‘+’)退出006.2)恰汗合孜尔《C语言程序设计》中国铁道出版社2009.3)杨永斌《数据结构(理论与实践).》天津科学技术出版社4)百度资料八、附录#include<>#include<>#include<>#include#include<>#definenull0#defineW10usingnamespacestd;typedefstructterm{.if(p->expnexpn)//将链表中的元素按指数从高到低排列{f=p->coef;i=p->expn;p->coef=q->coef;p->expn=q->expn;q->coef=f;q->expn=i;fini=1;}}for(g=h,p=g->next;p;)//比较将指数相同的数进行合并if(g->expn==p->expn){g->coef+=p->coef;g->next=p->next;//合并后跳过一个元素,并删除该结点q=p;p=p->next;free(q);}elseif(g->next){g=g->next;p=p->next;}returnh;}voidPrintfPoly(term*P){//输出按指数从大到小排列后的一元多次式term*q=P;if(!q){putchar('0');return;}if(q->coef!=1){printf("%g",q->coef);//%g用来输出实数,它根据数值的大小,自动选f格式或e格式,且不输出无意义的0if(q->expn==1)putchar('X');//若指数值大小为1,则指数省略elseif(q->expn)printf("X^%d",q->expn);}elseif(!q->expn)putchar('1');elseif(q->expn==1)putchar('X');elseprintf("X^%d",q->expn);q=q->next;while(q){if(q->coef>=0)putchar('+');if(q->coef!=1){printf("%g",q->coef);if(q->expn==1)putchar('X');elseif(q->expn)printf("X^%d",q->expn);}elseif(!q->expn)putchar('1');elseif(q->expn==1)putchar('X');elseprintf("X^%d",q->expn);q=q->next;}}intCompare(term*a,term*b){if(a->expnexpn)return-1;if(a->expn>b->expn)return1;return0;}floatC(term*c,floatx)//计算输入变量的多项式的值{floatsum=0,a;intb;term*q=c;for(;q;q=q->next){a=q->coef;b=q->expn;sum+=a*pow(x,b);}returnsum;}te...

1、当您付费下载文档后,您只拥有了使用权限,并不意味着购买了版权,文档只能用于自身使用,不得用于其他商业用途(如 [转卖]进行直接盈利或[编辑后售卖]进行间接盈利)。
2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。
3、如文档内容存在违规,或者侵犯商业秘密、侵犯著作权等,请点击“违规举报”。

碎片内容

数据结构课程设计,一元多项式

确认删除?
VIP
微信客服
  • 扫码咨询
会员Q群
  • 会员专属群点击这里加入QQ群
客服邮箱
回到顶部