多項式加法的實現

2021-08-10 09:07:10 字數 1088 閱讀 5267

//採用不帶頭結點的單向鍊錶,按照指數遞減的順序排列各項

//思路:倆個指標p1p2分別指向這兩個多項式的第乙個結點,不斷迴圈

#include

#include

struct polynode ;

typedef struct polynode *polynomial;

polynomial p1, p2;

int compare(int a, int b)

void attach(int c, int e, polynomial *prear)

polynomial polyadd(polynomial p1, polynomial p2)

//當迴圈退出的時候就說明p1p2中至少有乙個為空

for (; p1; p1 = p1->

link)//如果p1不空則p2空,就把p1後邊的每一項都接到結果多項式的後邊,同時把p1往後挪

attach(p1->coef, p1->expon, &rear);

for (; p2; p2->

link)

attach(p2->coef, p2->expon, &rear);

//兩個for做完則說明兩多項式相加基本完成

rear->

link

=null;//加完之後rear後邊沒有了設為null

temp = front;//front原來指向臨時的表頭結點,要把臨時的表頭結點釋放掉釋放掉,他的下一項就是就是真正的多項式的第一項,所以把它的值賦給temp,它本身往後挪最後返回他

多項式加法

題目內容 乙個多項式可以表達為x的各次冪與係數乘積的和,比如 現在,你的程式要讀入兩個多項式,然後輸出這兩個多項式的和,也就是把對應的冪上的係數相加然後輸出。程式要處理的冪最大為100。輸入格式 總共要輸入兩個多項式,每個多項式的輸入格式如下 每行輸入兩個數字,第乙個表示冪次,第二個表示該冪次的係數...

多項式加法

題目內容 乙個多項式可以表達為x的各次冪與係數乘積的和,比如 2x6 3x5 12x3 6x 20 現在,你的程式要讀入兩個多項式,然後輸出這兩個多項式的和,也就是把對應的冪上的係數相加然後輸出。程式要處理的冪最大為100。輸入格式 總共要輸入兩個多項式,每個多項式的輸入格式如下 每行輸入兩個數字,...

多項式加法

給定兩個多項式p x 與q x 通過鍊錶實現它們的加法。有若干組,每組有2個多項式。每組輸入時先輸入第1個多項式,再輸入第2個多項式。每組用若干對整數表示,依序每兩個相鄰的整數表示多項式的一項,分別是它的係數和冪。當輸入的冪為負數時,表示乙個多項式的結束。乙個多項式中各項的次序是隨機的。對每組中兩個...