資料結構實驗 實驗二 一元多項式相加

2021-09-11 10:26:44 字數 1540 閱讀 6847

一、【實驗目的】

1、了解鏈式儲存結構的基本知識;

2、掌握演算法思想和資料結構的描述;

3、結合一元多項式相加的運算規則。

二、【實驗內容】

結合書上第41頁的例子,採用鏈式儲存結構,將兩個線性鍊錶表示的一元多項式相加,並輸出。此一元多項式遵循多項式相加運算規則:對於兩個一元多項式中存在指數相同的項時,其對應係數相加。合併後係數和為零時,刪除「和多項式」中此項;合併後係數和不為零時,則構成「和多項式」中的一項。對於兩個一元多項式中存在的指數不相同的項,則分別復抄到「和多項式」中去,原多項式保持不變。

三、【實驗步驟與要求】

1、實驗前的準備

(1)了解c語言的基本概念;

(2)了解c語言的基本段落。

2、上機操作

(1)了解鏈式儲存結構的基本知識;

(2)掌握演算法思想和資料結構的描述;

(3)掌握一元多項式相加的運算規則。

#include#include#define true            1

#define false 0

#define ok 1

#define error 0

#define infeasible -1

#define overflow -2

#define list_init_size 100

typedef int status; //status是函式的型別,其值是函式結果**

struct node;

typedef struct polynomial*polylist;

//建立一元多項式鍊錶

void createpolyn(polylist *ha,int n)

}//輸出一元多項式

void showsqlist(polylist ha)

}printf("\n");

}//氣泡排序鍊錶

void sortpolyn(polylist head,int n)

}//多項式相加

polylist add(polylist ha,polylist hb) //對已排序的多項式ha,hb進行相加

else

}else if(ha->elem.expn>hb->elem.expn)

else

}while(ha)

while(hb)

sortpolyn(hc,polynsize);//排序hc

return hc;

}int main ()

/*測試資料

第一行ha的項數

第二行為第i項對應係數與指數,i++,i從1開始

第三行hb的項數

第四行為第i項對應係數與指數,i++,i從1開始

31 3 2 2 4 1

42 2 5 1 -1 3 6 6

*/

資料結構 實驗二(一元多項式相加)

結合書上實驗指導書上的例子,採用鏈式儲存結構,將兩個線性鍊錶表示的一元多項式相加,並輸出。此一元多項式遵循多項式相加運算規則 對於兩個一元多項式中存在指數相同的項時,其對應係數相加。合併後係數和為零時,刪除 和多項式 中此項 合併後係數和不為零時,則構成 和多項式 中的一項。對於兩個一元多項式中存在...

資料結構實驗之一元多項式相加

實驗內容 結合書上第41頁的例子,採用鏈式儲存結構,將兩個線性鍊錶表示的一元多項式相加,並輸出。此一元多項式遵循多項式相加運算規則 對於兩個一元多項式中存在指數相同的項時,其對應係數相加。合併後係數和為零時,刪除 和多項式 中此項 合併後係數和不為零時,則構成 和多項式 中的一項。對於兩個一元多項式...

資料結構實驗 一元多項式計算器

實驗內容 設有一元多項式am x 和bn x 程式設計實現多項式am x 和bn x 的加法 減法和乘法運算。其中多項式描述為 am x a0 a1x1 a2x2 a3x3 amxm bn x b0 b1x1 b2x2 b3x3 bnxn。輸入和輸出 1 輸入 struct polynode typ...