个人资料整理仅限学习使用实验一一元稀疏多项式的表示及加法运算一、 需求分析1.程序的功能 : 多项式以指数递增的顺序输入。设计的数据结构应有利于表示任意一元稀释多项式。输出原始多项式及运算结果。附加功能:乱序输入计算表达式结果2.输入输出要求:多项式以指数递增的方式输入输出原始多项式及其结果3.测试数据(1> , (2>0 , (3> , -1 附加功能测试数据:(4>,二、 概要设计所用数据结构定义:struct Term{ // 多项式结点的定义float coef 。// 系数int exp 。// 指数Term * link。Term(float c, int e,Term * next=NULL>{coef=c。exp=e。link=next。}Term *InsertAfter(float c, int e> 。Term & operator -=(Term & t>{ if (t.exp==exp> coef-=t.coef。return * this 。} Term & operator +=(Term & t>{ if (t.exp==exp> coef+=t.coef。return * this 。} friend ostream & operator <<(ostream &,const Term&>。} 。class Polynomal{ // 多项式的类定义public : Polynomal(>{ // 构造函数,建立空链表first=new Term(0,-1>。个人资料整理仅限学习使用first->link=first。// 必须链成环} ~Polynomal(>{makeEmpty(>。} Polynomal(Polynomal & R>。// 复制构造函数Polynomal & operator=( const Polynomal & R>。// 重载复制赋值操作符void insert(float c, int e,Polynomal& R>。// 对于二项式进行插入排序 Polynomal sort(>。// 对于多项式进行排序Term * getHead(> const { return first。} void makeEmpty(> 。private: Term * first。friend ostream & operator <<(ostream &,const Polynomal&> 。friend istream & operator >>(istream &,Polynomal&>。friend Polynomal operator +(Polynomal&,Polynomal&>。} 。主程序的流程及各模块之间的层次关系:1)主程序流程程序运行输入第一个多项式f(x)提示分别输入系数、指数系数、指数是否为0、-1键入 Enter表示输入一组系数、指数输入第一个多项式g(x)提示分别输入系数、指数键入 Enter表示输入一组系数、指数系数、指数是否为0、-1结束YNN对输入表达式进行升幂排列Y输出排序完成的表达式,以及计算结果2)模块之间层次关系个人资料整理仅限学习使用重载 operator+插入 InsertAftermain函数重载 operator>>重载 operator =调用调用 sort函数进行多项式排...