編寫一元多項式加法運算程式。要求用線性鍊錶儲存一元多項式(參照課本)。
該程式有以下幾個功能:
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各項的係數(整數)、指數(整數)
對應一組輸入,輸出一次操作的結果(參見測試用例)。
測試輸入
121 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 指數相等時,係數相...