freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

數(shù)據(jù)結(jié)構(gòu)課程設(shè)計-在線瀏覽

2024-10-17 07:25本頁面
  

【正文】 學(xué) 號: 201201011367 姓 名: 左帥帥 指導(dǎo)老師: 郝慎學(xué) 時 間:一、課程設(shè)計題目分析本課程設(shè)計要求利用C語言或C++編寫,本程序?qū)崿F(xiàn)了一元多項式的加法、減法、乘法、除法運算等功能。首先,利用順序存儲結(jié)構(gòu)來構(gòu)造兩個存儲多項式A(x)和 B(x)的結(jié)構(gòu)。然后各個模塊里面還要分成若干種情況來考慮并通過函數(shù)的嵌套調(diào)用來實現(xiàn)其功能,盡量減少程序運行時錯誤的出現(xiàn)。三、設(shè)計算法分析相關(guān)函數(shù)說明:(1)定義數(shù)據(jù)結(jié)構(gòu)類型為線性表的鏈?zhǔn)酱鎯Y(jié)構(gòu)類型變量typedef struct Polynomial{}(2)其他功能函數(shù)插入函數(shù)void Insert(Polyn p,Polyn h)比較函數(shù)int pare(Polyn a,Polyn b)建立一元多項式函數(shù)Polyn Create(Polyn head,int m)求解并建立多項式a+b,Polyn Add(Polyn pa,Polyn pb)求解并建立多項式ab,Polyn Subtract(Polyn pa,Polyn pb)2求解并建立多項式a*b,Polyn Multiply(Polyn pa,Polyn pb)求解并建立多項式a/b,void Device(Polyn pa,Polyn pb)輸出函數(shù)輸出多項式,void Print(Polyn P)銷毀多項式函數(shù)釋放內(nèi)存,void Destroy(Polyn p)主函數(shù),void main()主程序的流程基函數(shù)調(diào)用說明(1)typedef struct Polynomial {float coef。struct Polynomial *next。在這個結(jié)構(gòu)體變量中coef表示每一項前的系數(shù),expn表示每一項的指數(shù),polyn為結(jié)點指針類型,屬于抽象數(shù)據(jù)類型通常由用戶自行定義,Polynomial表示的是結(jié)構(gòu)體中的數(shù)據(jù)對象名。為輸入的多項式申請足夠的存儲空間p=(Polyn)malloc(sizeof(struct Polynomial))。調(diào)用Insert函數(shù)插入結(jié)點這就建立一元多項式的關(guān)鍵步驟(3)由于多項式的系數(shù)和指數(shù)都是隨即輸入的,所以根據(jù)要求需要對多項式按指數(shù)進(jìn)行降冪排序。(4)加、減、乘、除、的算法實現(xiàn):在該程序中,最關(guān)鍵的一步是實現(xiàn)四則運算和輸出,由于加減算法原則是一樣,減法可通過系數(shù)為負(fù)的加法實現(xiàn);對于乘除算法的大致流程都是:首先建立多項式a*b,a/b,然后使用鏈表存儲所求出的乘積,商和余數(shù)。(5)另一個子函數(shù)是輸出函數(shù) PrintPolyn();輸出最終的結(jié)果,算法是將最后計算合并的鏈表逐個結(jié)點依次輸出,便得到整鏈表,也就是最后的計算式計算結(jié)果。四、程序新點通過多次寫程序,發(fā)現(xiàn)在程序在控制臺運行時總是黑色的,本次寫程序就想著改變一下,于是經(jīng)過查資料利用system(“Color E0”)。五、設(shè)計中遇到的問題及解決辦法首先是,由于此次課程設(shè)計里使用指針使用比較多,自己在指針多的時候易腦子混亂出錯,對于此問題我是采取比較笨的辦法在稿紙上寫明白后開始進(jìn)行 4代碼編寫。最后是,前期分析不足開始急于寫代碼,中途出現(xiàn)各種問題,算是給自己以后設(shè)計時的一個經(jīng)驗吧。而且對于數(shù)據(jù)結(jié)構(gòu)的相關(guān)算法和函數(shù)的調(diào)用方面知識的加深。八、指導(dǎo)老師評語及成績附錄:(課程設(shè)計代碼)include include include typedef struct Polynomial {float coef。struct Polynomial *next。//Polyn為結(jié)點指針類型 void Insert(Polyn p,Polyn h){if(pcoef==0)free(p)。q1=h。while(q2amp。pexpnexpn)//查找插入位置{q1=q2。}if(q2amp。pexpn==q2expn)//將指數(shù)相同相合并 {q2coef+=pcoef。if(!q2coef)//系數(shù)為0的話釋放結(jié)點{ q1next=q2next。}}else { pnext=q2。}//指數(shù)為新時將結(jié)點插入} 7} //建立一個頭指針為head、項數(shù)為m的一元多項式 Polyn Create(Polyn head,int m){int i。p=head=(Polyn)malloc(sizeof(struct Polynomial))。for(i=0。//建立新結(jié)點以接收數(shù)據(jù)printf(“請輸入第%d項的系數(shù)與指數(shù):”,i+1)。pcoef,amp。Insert(p,head)。} //銷毀多項式p void Destroy(Polyn p){Polyn q1,q2。8q2=q1next。q1=q2。} } //輸出多項式p int Print(Polyn P){Polyn q=Pnext。//項數(shù)計數(shù)器if(!q)//若多項式為空,輸出0{putchar(39。)。return。amp。+39。//系數(shù)大于0且不是第一項 9if(qcoef!=1amp。qcoef!=1)//系數(shù)非1或1的普通情況{printf(“%g”,qcoef)。X39。else if(qexpn)printf(“X^%d”,qexpn)。139。else if(qexpn==1)putchar(39。)。}if(qcoef==1){if(!qexpn)printf(“1”)。else printf(“X^%d”,qexpn)。flag++。} int pare(Polyn a,Polyn b){if(aamp。b){if(!b||aexpnbexpn)return 1。else return 0。amp。//a多項式已空,但b多項式非空else return 1。Polyn qb=pbnext。hc=(Polyn)malloc(sizeof(struct Polynomial))。headc=hc。switch(pare(qa,qb)){case 1:qccoef=qacoef。qa=qanext。case 0:qccoef=qacoef+qbcoef。qa=qanext。break。qcexpn=qbexpn。break。hcnext=qc。}else free(qc)。} //求解并建立多項式ab,返回其頭指針 Polyn Subtract(Polyn pa,Polyn pb){Polyn h=pb。Polyn pd。p=pnext。for(p=hnext。p=pnext)//恢復(fù)pb的系數(shù)pcoef*=1。} //求解并建立多項式a*b,返回其頭指針 Polyn Multiply(Polyn pa,Polyn pb){Polyn hf,pf。Polyn qb=pbnext。//建立頭結(jié)點hfnext=NULL。qa。qb。pfcoef=qacoef*qbcoef。Insert(pf,hf)。}//求解并建立多項式a/b,返回其頭指針 void Device(Polyn pa,Polyn pb){Polyn hf,pf,temp1,temp2。Polyn qb=pbnext。//建立頭結(jié)點,存儲商hfnext=NULL。//建立頭結(jié)點,存儲余數(shù)pfnext=NULL。temp1next=NULL。temp2next=NULL。while(qa!=NULLamp。qaexpn=qbexpn){temp2next=(Polyn)malloc(sizeof(struct Polynomial))。temp2nextexpn=(qaexpn)(qbexpn)。pa=Subtract(pa,Multiply(pb,temp2))。temp2next=NULL。pb=temp1。Print(hf)。Print(pf)。int m,n,flag=0。Polyn pa=0,pb=0,pc,pd,pf。scanf(“%d”,amp。printf(“n”)。//建立多項式A printf(“n”)。16scanf(“%d”,amp。printf(“n”)。//建立多項式B printf(“n”)。printf(“*多項式操作菜單printf(”**********************************************n“)。printf(”tt “)。printf(”tt “)。printf(”tt “)。while(choose){printf(”執(zhí)行操作:“)。flag)。Print(pa)。printf(“多項式B(x):”)。break。printf(“多項式A(x)+B(x):”)。Destroy(pc)。case 3:pd=Subtract(pa,pb)。Print(pd)。break。printf(“多項式A(x)*B(x):”)。Destroy(pf)。case 5:Device(pa,pb)。case 6:exit(0)。} }Destroy(pa)。}第三篇:《數(shù)據(jù)結(jié)構(gòu)》課程設(shè)計文檔格式(定稿)課程設(shè)計報告的內(nèi)容設(shè)計結(jié)束后要寫出課程設(shè)計報告,打印并裝訂,排版及圖,表要清楚,:封面、目錄、:陳述說明程序設(shè)計的任務(wù),強調(diào)的是程序要做什么,需要什么結(jié)果、說明本程序中用到的所有抽象數(shù)據(jù)類型的定義,主程序的流程以及各程序模塊之間的層次(調(diào)用)實現(xiàn)概要設(shè)計中定義的所有數(shù)據(jù)類型,對每個操作只需要寫出偽碼算法??刹捎昧鞒虉D、N S 圖進(jìn)行描述,內(nèi)容包括:。列出你的測試結(jié)果,:數(shù)據(jù)結(jié)構(gòu)課程設(shè)計報告班級:_____ _____ _____ _________姓名:____________________指導(dǎo)教師:___________________成績:__________________________信息工程學(xué)院年月日目錄 ………………………………………………22.概要設(shè)計………………………………………………2 ………………………………………………2 ………………………………………………2… ……………………………………………2 參考文獻(xiàn) …………………………………………………6附錄……………………………………………………一、需求分析二、概要設(shè)計三、詳細(xì)設(shè)計四、調(diào)試分析五、測試結(jié)果六、參考文獻(xiàn)七、附錄附錄為程序代碼!4第四篇:課程設(shè)計(數(shù)據(jù)結(jié)構(gòu))課程設(shè)計題目運動會分?jǐn)?shù)統(tǒng)計任務(wù):參加運動會有n個學(xué)校,學(xué)校編號為1……n。項目編號為男子1……m,女子m+1……m+w。(m=10 , w=8 , n=15)功能要求:1).可以輸入各個項目的前三名或前五名的成績; 2).能統(tǒng)計各學(xué)??偡郑ㄓ面湵恚?;3).可以按學(xué)校編號、學(xué)??偡?、男女團體總分排序輸出(快速、基數(shù));4).可按學(xué)校編號查詢學(xué)校某個項目的情況;可按項目編號查詢?nèi)〉们叭蚯拔迕膶W(xué)校。存儲結(jié)構(gòu):學(xué)生自己根據(jù)系統(tǒng)功能要求自己設(shè)計,但是要求運動會的相關(guān)數(shù)據(jù)要存儲在數(shù)據(jù)文件中。進(jìn)行程序測試,以保證程序的穩(wěn)定。要求:1).隨機產(chǎn)生顧客的到達(dá)時間和服務(wù)時間存盤。2).當(dāng)有顧客離開時,根據(jù)隊列長度調(diào)整隊尾。4).考慮顧客具有優(yōu)先級的情況。要求:輸入任意兩站點,給出最佳的乘車線路和轉(zhuǎn)車地點
點擊復(fù)制文檔內(nèi)容
環(huán)評公示相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1