一元多項式的相加

2021-07-29 23:08:00 字數 1583 閱讀 6943

編寫一元多項式加法運算程式。要求用線性鍊錶儲存一元多項式(參照課本)。

該程式有以下幾個功能:

1. 多項式求和

輸入:輸入三個多項式,建立三個多項式鍊錶pa、

pb、pc

createpolyn(polynomial &p,int m)。

輸出:顯示三個輸入多項式pa、

pb、pc、和多項式

pa+pb

、多項式

pa+pb+pc

addpolyn(polynomial &pa, polynomial pb), 呼叫

printpolyn(polynomial p))。

0. 退出

根據所選功能的不同,輸入格式要求如下所示(第乙個資料是功能選擇編號,參見測試用例):

多項式a包含的項數,以指數遞增的順序輸入多項式

a各項的係數(整數)、指數(整數)

多項式b包含的項數,以指數遞增的順序輸入多項式

b各項的係數(整數)、指數(整數)

多項式c包含的項數,以指數遞增的順序輸入多項式

c各項的係數(整數)、指數(整數)

對應一組輸入,輸出一次操作的結果(參見測試用例)。

測試輸入

1

21 1 2 2

21 1 2 2

21 1 2 2

測試輸出

<1,1>,<2,2>

<1,1>,<2,2>

<1,1>,<2,2>

<2,1>,<4,2>

<3,1>,<6,2>

源**

#include #include #define ok 1  

#define error 0  

#define true 1  

#define false 0  

typedef int elemtype;  

typedef int status;  

typedef struct lnode  

lnode, *linklist;   //線性鍊錶的結構  

void createlist(linklist &h)  

p->next = null;  

}//createlist    //以線性鍊錶的結構建立一元多項式   

void printlist(linklist &head)  

else  

while (p)  

printf("\n");  

}//printlist  

void addpolyn(linklist &pa, linklist &pb)  

else if (a->exp == b->exp)  

else  

q = b;  

b = b->next;  

free(q);  

}  else  

}  if (b)  

cur->next = b;  

}//addpolyn  

status main()  

return 0;  

}

2 一元多項式相加

成績 10開啟時間 2014年10月19日 sunday 00 00 折扣0.8 折扣時間 2014年11月2日 sunday 23 55 允許遲交 否關閉時間 2014年11月9日 sunday 23 55 編寫一元多項式加法運算程式。要求用線性鍊錶儲存一元多項式 參照課本 該程式有以下幾個功能 ...

C 一元多項式相加

問題描述 一元多項式每一項由係數pi及x的指數i組成。若多項式按照公升冪排列,則它由n 1個係數唯一確定,因此可以用乙個線性表表示,其指數i隱藏在係數pi的序號內。分別兩個多項式a x b x 係數 指數所構成的表。輸出為兩多項式和c x 所構成的鍊錶。設計思路 將b x 加到a x 後,形成c x...

一元多項式的相加減

include include typedef struct node polynode polynode create int n r next null return l void add polynode pa,polynode pb else if p exp q exp 指數相等時,係數相...