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

正文內(nèi)容

數(shù)據(jù)結(jié)構(gòu)課程設(shè)計(jì)---用兩種方式實(shí)現(xiàn)表達(dá)式自動(dòng)計(jì)算-資料下載頁

2025-06-03 14:51本頁面
  

【正文】 } i++。 } PushNum(data,n)。 /*將數(shù)值進(jìn)棧 */ } else { if(array[i]==39。39。) /*遇見字符 */ { while(visitChar(op)!=39。39。) /*對(duì)操作符棧進(jìn)行遍歷 */ { PopChar(op,amp。opChar)。 /*字符出棧 */ PopNum(data,amp。opA)。 PopNum(data,amp。opB)。 /*數(shù)出棧 */ result=Compute(opB,opChar,opA)。 /*調(diào)用運(yùn)算函數(shù) */ PushNum(data,result)。 } } else { if(level(array[i])level(visitChar(op))|| visitChar(op)==39。(39。) /*判斷操作符的優(yōu)先級(jí)高低 */ { PushChar(op,array[i])。 /*操作符進(jìn)棧 */ } else { if(array[i]==39。)39。) /*當(dāng)操作符為 )時(shí) */ { while(visitChar(op)!=39。(39。) /*遍歷操作符棧 */ { PopChar(op,amp。opChar)。 PopNum(data,amp。opA)。 PopNum(data,amp。opB)。 /*從數(shù)值棧輸出一個(gè)值 */ result=Compute(opB,opChar,opA)。 PushNum(data,result)。 /*結(jié)果放回棧里 */ } PopChar(op,amp。opChar)。 /*輸出操作符 */ 用兩種方式實(shí)現(xiàn)表達(dá)式自動(dòng)計(jì)算 14 } else { while(level(array[i])=level(visitChar(op))) /*判斷操作符的優(yōu)先級(jí)高低 */ { PopChar(op,amp。opChar)。 PopNum(data,amp。opA)。 /*從數(shù)值棧輸出數(shù)值 */ PopNum(data,amp。opB)。 esult=Compute(opB,opChar,opA)。 /*調(diào)用運(yùn)算函數(shù)*/ PushNum(data,result)。 /*將運(yùn)算結(jié)果入棧 */ } PushChar(op,array[i])。 /*將操作符入棧 */ } } } } } printf(the Result is:%.6f\n\n,result)。 /*輸出掃描一遍的運(yùn)算結(jié)果 */ } } 四、運(yùn)行結(jié)果 (一) 中綴轉(zhuǎn)后綴算法的運(yùn)行結(jié)果: 用兩種方式實(shí)現(xiàn)表達(dá)式自動(dòng)計(jì)算 15 圖 3 中綴轉(zhuǎn)后綴算法的運(yùn)行結(jié)果 ( 二 ) 直接計(jì)算算法的運(yùn)行結(jié)果: 圖 4 直接計(jì)算算法的運(yùn)行結(jié)果 用兩種方式實(shí)現(xiàn)表達(dá)式自動(dòng)計(jì)算 16 五、遇到的問題及解決 這部分我主要遇到了如下兩個(gè)問題,其內(nèi)容與解決方法如下所列: ? 問題 1: 在遇到小數(shù)點(diǎn)處理的問題上,雖然說處理小數(shù)點(diǎn)的方法不是唯一的,但我在處理的時(shí)候只能計(jì)算一位小數(shù),如果輸入的是兩位的話,計(jì)算結(jié)果的時(shí)候它就把一位小數(shù)后面的數(shù)據(jù)全丟了。 解決方法 : 在輸出后綴表達(dá)式的時(shí)候可以看到棧里存的數(shù)據(jù)最多只帶一位小數(shù),所以結(jié)果也只能出現(xiàn)一位 小數(shù)。因?yàn)樵谔幚硇?shù)的時(shí)候我是讓小數(shù)點(diǎn)后面的數(shù)乘以 ,再加上前面的。但如果是兩位的話,那么最后的那一個(gè)是要乘以 的,也就是乘以 的自乘,所以在處理小數(shù)時(shí)我加了自乘的這行代碼,運(yùn)行的結(jié)果才 真確的 出來了。 ? 問題 2: 無論輸入什么表達(dá)式,不知道結(jié)果為什么始終是‘ ‘,運(yùn)行還是行的,有的時(shí)候程序只是按照掃到最后的一個(gè)運(yùn)算符來執(zhí)行。 圖 5 運(yùn)行出錯(cuò) 解決方法 : 剛開始不知道哪兒出錯(cuò)了,就瞎找那些有可能會(huì)出現(xiàn)錯(cuò)的地方,比如:能從圖中直接看出來,沒有后綴表達(dá)式;計(jì)算結(jié)果也是錯(cuò)誤的;還有可能是哪個(gè)函數(shù)調(diào)用時(shí)出了錯(cuò)。隨后就從最簡(jiǎn)單的函數(shù)調(diào)用出錯(cuò)的問題 開始檢查,沒有發(fā)現(xiàn)什么明顯的錯(cuò)誤,就放棄了這個(gè)問題,接著就是計(jì)算有沒有出現(xiàn)簡(jiǎn)單的錯(cuò)誤,因?yàn)樗容^于中綴轉(zhuǎn)后綴要簡(jiǎn)單一些,就開始試,單獨(dú)的對(duì)這一段代碼試,結(jié)果還是沒發(fā)現(xiàn)什 么錯(cuò)誤,最后就剩下最難的中綴轉(zhuǎn)后綴的問題了,如果這個(gè)也沒有錯(cuò),那就不知道哪兒出錯(cuò)了,就開始對(duì)它調(diào)試,看了兩個(gè)小時(shí)也沒找出來什么錯(cuò)誤。以后才找到那兒出了漏洞,原來缺少一句賦值語句 “ houzhui[j]=n;” 就成這樣了 ,這個(gè)錯(cuò)誤告訴我一點(diǎn)點(diǎn)的小錯(cuò)誤也能導(dǎo)致整個(gè)程序的錯(cuò)誤。 用兩種方式實(shí)現(xiàn)表達(dá)式自動(dòng)計(jì)算 17 六、心得體會(huì) 通過這次的作業(yè)我充分的認(rèn)識(shí)到了自己的不足,特別是對(duì)寫程序代碼這方面,一個(gè)程序從算法到用程序把它實(shí)現(xiàn)出來,這一整個(gè)過程是很不容易的,你懂得它的算法,不一定就能寫的出來,通過這次我也深深的了這一點(diǎn)。對(duì)于一個(gè)新手來說,小 的錯(cuò)誤出現(xiàn)的太多,而且一個(gè)小的錯(cuò)誤就能讓我束手無策,因?yàn)橄氩煌ㄥe(cuò)在哪,所以就一直在亂改,邏輯錯(cuò)誤就更難了,有時(shí)候程序運(yùn)行語法沒有錯(cuò)誤,但只要輸入表達(dá)式計(jì)算結(jié)果時(shí),出來的結(jié)果要不是錯(cuò)的,要不就不出現(xiàn)結(jié)果,這種錯(cuò)的原因更難找。感覺難的原因可能就是平時(shí)少練習(xí),代碼量也是積累很少的,這樣我們尋找程序的錯(cuò)誤覺得很難,修改過來就更難了。但是運(yùn)行的正確結(jié)果出來的時(shí)候,覺得有點(diǎn)興奮。不管怎么說,這次的作業(yè)給我的感觸的確不小,懂得發(fā)現(xiàn)問題,嘗試著從個(gè)方面收集資料努力去解決它,提升了自己解決問題的能力,但突然發(fā)現(xiàn)自己原來什么都 不會(huì),有的也是理論上懂得一點(diǎn),但實(shí)踐起來卻無法下手,所以覺得自己 以后 要學(xué)的東西實(shí)在是太多了 ,必須多動(dòng)手才能克服這些低級(jí)錯(cuò)誤 。
點(diǎn)擊復(fù)制文檔內(nèi)容
畢業(yè)設(shè)計(jì)相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1