#include
#include
#define ok 1
#define error 0
typedef
int returnvalue;
typedef
struct polynode polynode,
* polylist;
//輸入資料, 邊輸入邊排序進鍊表
returnvalue 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()
// 輸入並整理資料
int n2;
// n2 為多項式 b 的項數
printf
("請輸入第二個多項式的項數:");
scanf
("%d"
,&n2)
; polylist b;
init
(b);
// 初始化鍊錶 b if(
inputdataandsortingdata
(a, n1)
== error)
// 輸入並整理資料
polynomialadd
(a, b)
;// 進入函式開始計算
displayresult
(a);
// 顯示計算結果
break
;case2:
aboutus()
;break;}
printf()
; function =
input_judgefun
(function);}
printf
("感謝使用!\n");
}//輸入資料, 邊輸入邊排序進鍊表
intinputdataandsortingdata
(polylist polynomial,
int n)
int i;
polylist q, p;
q =(polylist)
malloc
(sizeof
(polynode));
p =(polylist)
malloc
(sizeof
(polynode));
printf
("請依次輸入每一項的係數和指數:\n");
for(i =
1; i <= n; i++)if
(!(polynomial->next)
)else
else
if(s->exp == p->exp)
// p、q 指標後移
q = q->next;
p = p->next;}if
(!p)}}
return ok;
}//將兩個多項式相加,線性表合併演算法
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.熟悉掌握多項式加法的演算法。二 實驗原理 順序儲存的線性表有一些弱點,其一,插入與刪除元素需要大量移動元素 其二,預先分配儲存空間時必須按最大的空間來分配。其三,表長難以擴充。...
一元多項式加法計算器
include include typedef struct polynode polynode,polylist 輸入資料,邊輸入邊排序進鍊表 void inputdataandsortingdata polylist polynomial,int n 初始化多項式鍊錶 void init pol...
一元稀疏多項式計算器(加減)
思路 1.首先是建立鍊錶,再儲存資料。2.進行多項式的運算。通過每一項的比較,判斷指數是否相等,相等就進行合併,不相等就不操作並找到下一項。這道題主要是考察了鍊錶的操作,估計很多人都會被繞暈了,不知道指標指向了 我已開始也敗在了指向問題上,在加法操作中,把pa,pb鍊錶記憶體的資料元素全都改變了,又...