




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、課程設計報告表達式類型的實現(xiàn)方銳洲課程設計表示式類型的實現(xiàn)學院計算機學院專業(yè)計算機科學與技術年級班別級01班學號學生姓名方銳洲輔導教師 吳偉民成績表示式類型的實現(xiàn)目錄: TOC o 1-5 h z 一、 需求分析3二、 概要設計3-61、數(shù)據類型的聲明:2、表示式的抽象數(shù)據類型定義3、整體設計三、詳細設計7-131、二叉樹的存儲類型2、順序棧的存儲類型3、表示式的基本操作4、主程序和其它偽碼算法5、函數(shù)的調用關系 TOC o 1-5 h z 四、 設計和調試分析14五、 用戶手冊14六、 測試15-18七、課程設計的心得和心得以及問題-18八、 參考文獻19九、 附錄:程序清單19-35一、需
2、求分析【課程設計要求】【問題的描述】一個表示式和一棵二叉樹之間,存在著自然的對應關系。寫一 個程序,實現(xiàn)基于二叉樹表示的算術表示式Expression的操作?!净疽蟆俊疽弧俊颈刈霾糠帧考僭O算術表示式Expression內能夠含有變量(a-z),常量(0- 9)和二元運算符(+,-,*,/,八(乘幕)。實現(xiàn)以下操作:ReadExpr(E)-一以字符序列的形式輸入語法正確的前綴表 示式并構造表示式E。WriteExpr(E)-用帶括號的中綴表示式輸出表示式E。Assign(V,c)實現(xiàn)對變量V的賦值(V=c),變量的初 值為0。 Value(E)對算術表示式E求值。(5 ) CompoundE
3、xpr(p,E1,E2)構造一個新 的復合表示式(E1) p (E2)。【二】【選做部分】以表示式的原書寫形式輸入,支持大于0的正整數(shù)常量;增加常數(shù)合并操作MergeConst(E)合并表示式E中所有 常數(shù)運算。例如,對表示式E=(2+3-a)*(b+3*4)進行合并常數(shù)的操 作后,求得 E=(5-a)*(b+12)【測試數(shù)據】1)分別輸 入 0 ; a;-91;+a*bc;+*5x2*8x;+*3八*2八x2x6 并輸 出。2)每當輸入一個表示式后,對其中的變量賦值,然后對表示 式求值。3)還有很多測試的數(shù)據,詳細請見附上的文件Test.txto二、概要設計1、數(shù)據類型的聲明:在這個課程設計
4、中,采用了鏈表二叉樹的存儲結構,以及兩個順序棧的輔助存儲結構/*頭文件以及存儲結構*/#include#include#include#include#define TRUE 1#define FALSE 0#define OK 1#define ERROR 0#define OVERFLOW 0typedef int Status;2、表示式的抽象數(shù)據類型定義ADT Expression(數(shù)據對象D: D是具有數(shù)值的常量C和沒有數(shù)值的變量V;數(shù)據關系:R=|V,Ce D, 表示由運算符P結合起來的表示式E基本操作:Status Input_Expr(&string,flag)操作結果:以字符
5、序列的形式輸入語法正確的前綴表示式,保存到字符串string;參數(shù)flag表示輸出的提示信息是什么,輸入成功返回OK,否則,返回ERRORovoid judge_value(&E,&string,i)初始條件:樹E存在,表示式的前綴字符串string存在;操作結果:判斷字符stringi,如果是0-9常量之間,二叉樹結點E存為整型;否則,存為字符型。Status ReadExpr(&E,&exprstring)初始條件:表示式的前綴形式字符串exprstring存在;操作結果:以正確的前綴表示式exprstring并構造表示式E,構造成功,返回OK,否則返回ERRORoStatus Pri_C
6、ompare(c1,c2)初始條件:c1和c2是字符;操作結果:如果兩個字符是運算符,比較兩個運算符的優(yōu)先級,c1比c2優(yōu)先,返回OK,否則返回ERRORovoid WriteExpr(&E)初始條件:表示式E存在;操作條件:用帶括弧的中綴表示式輸入表示式E。void Assign(&E,V,c,&flag)初始條件:表示式E存在,flag為標志是否有賦值過; 操作結果:實現(xiàn)對表示式E中的所有變量V的賦值(V=c)olong Operate(opr1,opr,opr2)初始條件:操作數(shù)oprl和操作數(shù)opr2以及操作運算符opr;操作結果:運算符運算求值,參數(shù)opr1,opr2為常量, opr為運算符,根據不同的運算符,實現(xiàn)不同的運算,返 回運算結果。Status Check(E)初始條件:表示式E存在;操作結果:檢查表示式E是否還存在沒有賦值的變量,以便求算數(shù)表示式E的值。long Value(E)初始條件:表示式E存在;操作結果:對算術表示式求值,返回求到的結果。void Compo
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 【正版授權】 ISO/IEC 23090-8:2025 EN Information technology - Coded representation of immersive media - Part 8: Network based media processing
- 【正版授權】 IEC 63119-1:2025 FR Information exchange for electric vehicle charging roaming service - Part 1: General
- 卒中相關知識課件
- 河南小升初鶴壁數(shù)學試卷
- 健康素養(yǎng)66項培訓課件
- 貴陽市一模高三數(shù)學試卷
- 廣西欽州市初二數(shù)學試卷
- 2025屆廣東省惠州市惠東縣燕嶺學校高一物理第二學期期末質量檢測試題含解析
- 健康科普課件要求
- 2025年上海市華東師范大學二附中物理高二第二學期期末質量跟蹤監(jiān)視模擬試題含解析
- 留疆戰(zhàn)士考試試題及答案
- 一般飼料企業(yè)質量安全管理規(guī)范文件參考含制度記錄表格
- 2025+CSCO前列腺癌診療指南進展
- 砂紙契房訂金合同協(xié)議
- 總體概述:施工組織總體設想、方案針對性及施工段劃分
- 2025年浙江金華義烏市水利工程管理有限公司招聘筆試參考題庫附帶答案詳解
- 義務教育物理課程標準解讀全文
- 2025年云南新華印刷五廠有限責任公司招聘筆試參考題庫含答案解析
- 2025年浙江金華市義烏市雙江湖開發(fā)集團有限公司招聘筆試參考題庫附帶答案詳解
- DB65-T8024-2024 建筑用室外氣象參數(shù)標準J17664-2024
- 霍爾果斯人才集團招聘筆試沖刺題2025
評論
0/150
提交評論