第四周專案六

2021-08-09 06:03:12 字數 1781 閱讀 7226

檔名稱:test

作 者:賈存鈺

完成日期:2023年10月7日

問題描述:用單鏈表儲存一元多項式,並實現兩個多項式的加法。

輸入描述:無

輸出描述:原多項式以及有序多項式及求和

*/[cpp]view plain

copy

#include 

#include 

#define max 20          //多項式最多項數

typedef

struct

//定義存放多項式的陣列型別

polyarray;  

typedef

struct

pnode    

//定義單鏈表結點型別,儲存多項式中的一項,鍊錶構成多項式

polynode;  

void

disppoly(polynode *l)  

//輸出多項式

printf("\n"

);  

}  void

destroylist(polynode *&l)  

//銷毀單鏈表

free(p);  

}  void

createlistr(polynode *&l, polyarray a, 

intn) 

//尾插法建表

r->next=null;               //終端結點next域置為null

}  void

sort(polynode *&head)      

//按exp域遞減排序

}  }  void

add(polynode *ha,polynode *hb,polynode *&hc)  

//求兩有序集合的並,完成加法

else

if(pa->expexp)  

else

//pa->exp=pb->exp

pa=pa->next;  

pb=pb->next;  

}  }  

if(pb!=null) pa=pb;    

//複製餘下的結點

while

(pa!=null)  

tc->next=null;  

}  int

main()  

,,,};  

polyarray b= ,,,,};  

createlistr(ha,a,4);  

createlistr(hb,b,5);  

printf("原多項式a:   "

);  

disppoly(ha);  

printf("原多項式b:   "

);  

disppoly(hb);  

sort(ha);  

sort(hb);  

printf("有序多項式a: "

);  

disppoly(ha);  

printf("有序多項式b: "

);  

disppoly(hb);  

add(ha,hb,hc);  

printf("多項式相加:  "

);  

disppoly(hc);  

destroylist(ha);  

destroylist(hb);  

destroylist(hc);  

return

0;  

}  

第四周專案二

檔名稱 array.cpp 作 者 李中意 完成日期 2014 年 3月 19 日 版本號 v1.0 輸入描述 無 include includeusing namespace std class void setb double y void setc double z double geta v...

第四周專案二

01.02.程式的版權和版本宣告部分 05.檔名稱 score.cpp 06.作 者 07.完成日期 2014年 3 月 25 日 08.版本號 v1.0 09.輸入描述 已經在程式中初始化 10.問題描述 11.輸出 12.include includeusing namespace std cl...

第四周專案 2

include using namespace std class cfraction cfraction cfraction int nu,int de void cfraction set int nu 0,int de 1 void cfraction input void cfraction...