#include
#include
typedef
struct polynode polynode,
*polylist;
//輸入資料, 邊輸入邊排序進鍊表
void
inputdataandsortingdata
(polylist polynomial,
int n)
;//初始化多項式鍊錶
void
init
(polylist &polynomial)
;//將兩個多項式相加
void
polynomialadd
(polylist a, polylist b)
;// 輸出計算結果
void
displayresult
(polylist a)
;// 指令輸入與判斷
intinput_judgefun
(int function)
;// 顯示選單
void
menu()
;void
aboutus()
;int
main()
printf()
; function =
input_judgefun
(function);}
printf
("感謝使用!\n");
return0;
}//輸入資料, 邊輸入邊排序進鍊表
void
inputdataandsortingdata
(polylist polynomial,
int n)
int i;
polylist q, p;
printf
("請依次輸入每一項的係數和指數:");
for(i =
1; i <= n; i++
)else
else
if(s->exp == p->exp)
else}if
(!p)}}
}//將兩個多項式相加,線性表合併演算法
void
polynomialadd
(polylist a, polylist b)
else
if(p->exp == q->exp)
else
}else}if
(p)else
free
(b);
//釋放 b 鍊錶所佔的記憶體
}//初始化多項式鍊錶
void
init
(polylist &x)
// 輸出計算結果
void
displayresult
(polylist a)
else
while
(p)else
if(p->next !=
null
&& p->exp ==
1&& p->coef !=1)
else
if(p->next !=
null
&& p->exp !=
1&& p->coef ==1)
else
if(p->next !=
null
&& p->exp ==
1&& p->coef ==1)
else
if(p->next !=
null
&& p->exp ==0)
else
if(p->next ==
null
&& p->exp ==0)
else
if(p->next ==
null
&& p->exp !=
1&& p->coef !=1)
else
if(p->next ==
null
&& p->exp ==
1&& p->coef !=1)
else
if(p->next ==
null
&& p->exp !=
1&& p->coef ==1)
else
if(p->next ==
null
&& p->exp ==
1&& p->coef ==1)
temp = p;
p = p->next;
free
(temp)
;// 依次釋放每個節點的記憶體
}free
(a);
// 釋放 a 節點
printf
("\n");
}// 指令輸入與判斷
intinput_judgefun
(int function)
return function;
}// 顯示選單
void
menu()
void
aboutus()
一元稀疏多項式計算器
實驗 一元稀疏多項式計算器 一 實驗目的 1.了解線性表的鏈式儲存結構,熟練掌握鍊錶。2.了解作為鍊錶的多項式存貯方式。3.熟悉掌握多項式加法的演算法。二 實驗原理 順序儲存的線性表有一些弱點,其一,插入與刪除元素需要大量移動元素 其二,預先分配儲存空間時必須按最大的空間來分配。其三,表長難以擴充。...
一元稀疏多項式計算器(加減)
思路 1.首先是建立鍊錶,再儲存資料。2.進行多項式的運算。通過每一項的比較,判斷指數是否相等,相等就進行合併,不相等就不操作並找到下一項。這道題主要是考察了鍊錶的操作,估計很多人都會被繞暈了,不知道指標指向了 我已開始也敗在了指向問題上,在加法操作中,把pa,pb鍊錶記憶體的資料元素全都改變了,又...
一元多項式計算器 C 實現
1 任務描述 設有一元多項式am x 和bn x 程式設計實現多項式am x 和bn x 的加法 減法和乘法運算。其中多項式描述為 am x a0 a1x1 a2x2 a3x3 amxm bn x b0 b1x1 b2x2 b3x3 bnxn。2 主要資料型別與變數 使用到的標頭檔案 include...