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

正文內(nèi)容

表達(dá)式求值廣義表的運(yùn)算課程設(shè)計(jì)報(bào)告-全文預(yù)覽

2025-02-11 18:48 上一頁面

下一頁面
  

【正文】 f(( )。 //遞歸調(diào)用后續(xù)子表 else htp=NULL。,39。 h=ch。 //遞歸調(diào)用字表,鏈接到表頭結(jié)點(diǎn)上 } else if (ch==39。 //動(dòng)態(tài)申請(qǐng)個(gè)新廣義表 if (ch==39。 //取一個(gè)掃描字符 s++。 GList *CreateGL(char *amp。 //指向下一個(gè)元素,相當(dāng)于單鏈表中的next}GList。 //結(jié)點(diǎn)類型標(biāo)識(shí) union { ElemType atom。根據(jù)棧的特點(diǎn)將廣義表逆置輸出。選擇5,程序輸出廣義表的逆表;選擇0,退出廣義表的運(yùn)算,程序終止;每次操作結(jié)束以后,會(huì)有提示語句:是否繼續(xù)執(zhí)行其他操作(選擇繼續(xù) ;0、停止)。:找不到待查元素;求廣義表的表頭。g==NULL),因?yàn)榭毡頌楸斫Y(jié)點(diǎn),且空表沒子表,所以這話就可以判斷出廣義表是否為空表了。 printf(再 見 !\n)。 scanf(%d,amp。 else printf( 沒有找到待查元素!\n)。 scanf(%c,amp。 }}將棧中所有元素輸出:void Pop(SeqStack *s) { 打印棧中元素。廣義表的深度的遞歸定義是它等于所有子表中表的最大深度加1,若一個(gè)表為空或僅由單個(gè)元素所組成,則深度為1。g==NULL) { 空表不能求表頭;}else { 返回表頭結(jié)點(diǎn) }}求廣義表的表尾:tail(GList *g)一個(gè)廣義表的表尾指的是除去該廣義表的第一個(gè)元素剩下的部分。 g ==x) { 查找成功mark = 1。設(shè)置flag標(biāo)志查找結(jié)果;flag=1;表示查找成功,否則查找失敗。其實(shí)現(xiàn)過程如下:void DispGL(GList *g) { if (g!=NULL) { if (gtag==1) { 輸出左括號(hào)39。如果該子表為空,則輸出一個(gè)空格符;否則遞歸調(diào)用輸出該子表。字符,子表為空 else { 構(gòu)造原子結(jié)點(diǎn);}} else 串結(jié)束,子表為空讀入廣義表的一個(gè)字符給ch; if (ch==39。) { 遞歸構(gòu)造子表;}else if (ch==39。實(shí)現(xiàn)過程如下:GList *CreateGL(char *amp。 三、詳細(xì)設(shè)計(jì)與編碼建立廣義表CreateGL(char *amp。求廣義表的表頭,并輸出。程序流程圖如圖。例如:建立廣義表:(a,b(c,d),e) ,如圖3 1^ 0a0b1^ 0c0d1^0e1^^ 圖3 廣義表的存儲(chǔ)圖示求廣義表的逆表需要用堆棧存儲(chǔ)廣義表的元素,棧的數(shù)據(jù)類型如下:typedef char ElemType。 /*原子值*/ struct GLode *hp。tp域是用來存放與本元素同一層的下一個(gè)元素對(duì)應(yīng)結(jié)點(diǎn)的地址,當(dāng)該元素是所在層的最后一個(gè)元素時(shí),tp的值為NULL。廣義表的存儲(chǔ)結(jié)構(gòu):由于廣義表中的元素本身又可以具有結(jié)構(gòu),是一種帶有層次的非線性結(jié)構(gòu),因此難以用順序存儲(chǔ)的結(jié)構(gòu)表示。課本上在介紹廣義表的計(jì)本概念的基礎(chǔ)上,介紹了廣義表的存儲(chǔ)及應(yīng)用。 求廣義表的深度的依據(jù)是什么。一、問題分析與任務(wù)定義:此程序需要完成以下幾個(gè)任務(wù):首先要將輸入的用數(shù)組存儲(chǔ)的廣義表轉(zhuǎn)化成以廣義表的存儲(chǔ)結(jié)構(gòu)存儲(chǔ)的廣義表,這個(gè)過程也就是生成廣義表;查找廣義表,查找廣義表要返回一個(gè)值flag,當(dāng)flag=1時(shí),程序查找到待查的元素,當(dāng)flag=0時(shí),程序沒有找到待查元素;輸出廣義表,遍歷廣義表,輸出廣義表的遍歷結(jié)果;取表頭,返回表頭結(jié)點(diǎn);取表尾,將廣義表從第二個(gè)元素開始復(fù)制到另一個(gè)廣義表中;求廣義表的深度,遍歷每一層廣義表,將廣義表內(nèi)每層廣義表深度最大的廣義表相加為同一層所求過的子表中深度的最大值,最后返回值加一即為廣義表的深度;求逆表,將廣義表逆向輸出。本設(shè)計(jì)要求實(shí)現(xiàn)廣義表的建立、查找、輸出、取表尾、以及求深度、求逆表等。 建立廣義表,如何根據(jù)廣義表的存儲(chǔ)結(jié)構(gòu)的特點(diǎn)建立廣義表。二、概要設(shè)計(jì)和數(shù)據(jù)結(jié)構(gòu)選擇:設(shè)計(jì)思想:廣義表是線性表的一種推廣,但它并不是線性表。設(shè)計(jì)程序時(shí),先起草了流程圖,通過流程圖來看,就使得程序鮮明易懂,接下來先寫好了主函數(shù),通過主函數(shù)的調(diào)用,實(shí)現(xiàn)題目要求的各個(gè)功能,使得程序模塊化,便于編寫,即使不會(huì)寫的子函數(shù),也可以先空著,等待以后想到好的方法后再對(duì)其進(jìn)行操作,同時(shí)在程序界面上也做了美化,使人感覺舒暢,另外通過一個(gè)循環(huán),能讓用戶進(jìn)行循環(huán)操作,不至于每次只能進(jìn)行一項(xiàng)操作,這個(gè)循環(huán)用的和線性表里的循環(huán)有點(diǎn)類似,但其實(shí)現(xiàn)的操作不同,當(dāng)然有了以前實(shí)驗(yàn)的基礎(chǔ),這次編寫起來,也感覺輕松了不少。當(dāng)tag為1時(shí),該結(jié)點(diǎn)是子表,第二個(gè)域?yàn)閔p,用以存放子表的地址;當(dāng)tag為0時(shí),該結(jié)點(diǎn)是原子結(jié)點(diǎn),第二個(gè)域?yàn)閍tom,用以存放元素值。 /*結(jié)點(diǎn)類型標(biāo)識(shí)*/ union { ElemType atom。 /*指向下一個(gè)元素*/} GList。}Seq
點(diǎn)擊復(fù)制文檔內(nèi)容
教學(xué)教案相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1