由於一元多項式包含係數項和指數項,其係數為float型,指數項為int型,往往將其兩項組合成為乙個結構元素型別,將多項式看成是乙個有序表,則多項式定義中的各個操作均可利用有序表操作來完成。
「建立多項式演算法」操作結果:輸入m項的係數和指數,建立一元多項式p;
「銷毀多項式演算法」初始條件:一元多項式p已存在;
操作結果:銷毀一元多項式
「輸出多項式演算法」初始條件:一元多項式p已存在;
操作結果:列印一元多項式p;
「多項式加法演算法」初始條件:兩個多項式的pa,pb已存在;
操作結果:pa=pa+pb,並銷毀pb;
# include# includetypedef structelemtype;
typedef struct lnode*linklist;
void makenode(linklist &s,elemtype e)
void insafter(linklist p,linklist s)
int compare(elemtype e1,elemtype e2)
else if(n==0) break;
p=p->next;q=p->next;
} makenode(s,e);insafter(p,s); //最大,放在最後乙個位置
}void initlist(linklist &l)
void setcurelem(linklist &p,elemtype e)
void createpolyn(linklist &l,int m)
}void show(linklist l)
while(p)
printf("/n");
}void listdestroy(linklist &l)
}void add(linklist &l1,linklist &l2) //l1中的值小,插入之
case 1: //l2中的值小,插入之
case 0: //刪除l1中的
else
q=p2;p2=p2->next;free(q); //統一刪除l2中的
}} }
if(p1)
r1->next=p1; //新增l1
else
r1->next=p2; //新增l2
free(l2);l2=q=null;p1=p2=r1=null;
}
# include"cf.h"
void main()
輸入一元多項式l1(4),l2(3)
輸出l1+l2
鍊錶實現一元多項式相加
c 鍊錶實現一元多項式相加 如下 輸入多項式按次數從高到低排列 include include using namespace std intmain 定義節點型別,coe表示x前的係數,order表示x的次數 int coe,order int i int nodenuma 多項式a的項數 pri...
一元多項式相加 鍊錶
問題描述 設計乙個一元稀疏多項式簡單計算器。基本要求 一元稀疏多項式簡單計算器的基本功能是 輸入並建立多項式 輸出多項式,輸出形式為整數序列 n,c1,e 1,c2,e 2,c n,en,其中n是多項式的項數,ci,e i分別是第i項的係數和指數,序列按指數降序排列 多項式a和b相加,建立多項式a ...
鍊錶實現一元多項式的相加
如下 include include struct polynomial 結構體的定義 void print polynomial l printf n int getlength polynomial l return i void newlist polynomial l l head retu...