資料結構課程設計 計算器

2022-06-24 19:57:03 字數 1036 閱讀 3249

山東大學軟體學院

資料結構課程設計報告

設計題目: 計算器

學號姓名年級

專業軟體工程

班級學期09-10學年第二學期

日期: 2010 年 3 月 26 日

設計報告內容:

1. 需求描述

設計乙個簡單的計算器,能夠在有限位數內實現加、減、乘、除運算,並支援括號和小數。

2. 2.實現思想

在程式的運算部分建立了兩個堆疊,分別用來儲存操作符和運算元。接收的使用者輸入可細分為四種,分別是數字,加減乘除操作符及左括號,右括號,等號。根據個符號的優先順序進行計算式的運算。

3. 資料結構設計

程式中主要運用堆疊這一資料邏輯結構。並建立了兩個堆疊,當遇到數字時直接壓入運算元堆疊;當遇到加減乘除或左括號時進行優先順序判斷:如果傳入的操作符優先順序大於棧頂操作符的優先順序則操作符入棧,如果傳入的操作符優先順序小於等於棧頂運算元的優先順序則將棧頂操作符彈出,另外從運算元堆疊彈出兩運算元進行運算,運算結果壓入運算元堆疊;當遇到右括號時從兩堆疊中彈出資料進行運算(每次結果壓入運算元堆疊),直至遇到左括號從堆疊中彈出為止;當遇到等號時從兩堆疊中彈出資料進行運算,直至操作符堆疊為空。

4. 功能設計

計算器可以進行簡單的運算,可以判斷使用者的錯誤輸入並且進行限制提示,比如:輸入的左右括號不匹配,除數為零,輸入非法字元時,都會有相應的提示,對使用者比較友好。

5. 執行環境說明

vc++6.0,c++執行環境

6. 操作說明

由於沒有使用者介面,只要根據提示輸入計算時即可。

7.系統測試用例

1+2*(6-4)/2

(5-8)*3)+2

8.收穫及體會

計算器這個題目以前就已經做過了,當時考慮的東西比較少,很多輸入錯誤判斷都沒有想到,以致輸入計算式時,程式經常會崩潰。這次考慮了很多以前沒有想到的問題,程式做的很友好了,當使用者輸入錯誤時會有提示。但是遺憾的是仍然沒有實現圖形介面,在這方面對於使用者的需求還是不很友好的。

在寫程式的過程中,發現了自己有些方面的還是有很多不足的,在今後的學習中會加強練習以提公升自己。

課程設計報告 計算器

計算器程式的設計與實現 資料結構課程設計 班級 計科1001 北京化工大學 資訊科學與技術學院電腦科學與技術專業 2011 12.一 功能描述 2 1.1 系統實現的目的和意義 3 1.2 系統實現的功能 3 1.3 系統開發的環境 3 二 總體結構 2 2.1 檔案清單 按檔案系統樹型方式排列 3...

資料結構課程設計

指導書山東建築大學 電腦科學與技術學院 二 六年十二月 課程設計基本情況 課程名稱 資料結構課程設計 相關課程 c語言程式設計 visual c 程式設計 資料結構 適合專業 電腦科學與技術 網路工程 軟體工程 設計週數 2周 學分 2學分 開課學期 第4學期 開課單位 電腦科學與技術學院 一 課程...

資料結構課程設計

總結報告 專業軟體工程 班級軟體1007 學號 20103540 姓名 日期 2012.9.17 東北大學軟體學院 第一章需求分析 問題定義 實現乙個網上拍賣系統,根據需求描述和附加的框架 完成乙個網上拍賣系統。分析 整個系統執行於windows平台,是基於b s結構的商業應用程式,程式為使用者提供...