《C++語言程序設計》課程設計報告分數計算器_第1頁
《C++語言程序設計》課程設計報告分數計算器_第2頁
《C++語言程序設計》課程設計報告分數計算器_第3頁
《C++語言程序設計》課程設計報告分數計算器_第4頁
《C++語言程序設計》課程設計報告分數計算器_第5頁
已閱讀5頁,還剩15頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、 c+語言課程設計簡單分數計算器 c+語言程序設計課程設計報告 姓 名: 指 導 學 號: 班 級:10計本2班 日 期:2011年05月20日 計算機科學與技術系課程設計評分表課程名稱: 面向對象程序設計 分數計算器 項 目評 價設計方案的合理性與創(chuàng)造性設計與調試結果設計說明書的質量功能完善度綜合成績學 號班 級姓 名綜合成績 教師簽名: 日 期: c+語言課程設計簡單計算器說明書目 錄一、設計目標2二、設計圖2三、圖解4四、調試和測試9五、分析及結論10六、附錄12一、設計目標制作一個分數計算器,以完成分數之間,分數與整數之間的四則運算,以及求分數的指數。系統(tǒng)界面不做牽制要求。在進行運算后

2、可以選擇繼續(xù)運算或者進行下一次新的運算,能實現(xiàn)返回功能。二、設計圖進入界面1、總體設計圖 主菜單安全退出分數的指數運算分數與整數之間的四則運算分數與分數之間的四則運算2、詳細圖開始main()while()start()case0退出fenshu()js()case1js()case2zs()case3模塊功能說明及調用關系說明:三、圖解1、 歡迎使用簡單計算器2、 等待系統(tǒng)進入主菜單在此選擇計算類型【選擇代碼,回車確定】1、為選擇分數與分數之間的四則運算、2、為選擇分數與整數之間的四則運算3、為分數的指數運算0、為安全退出程序3、 選擇分數與分數之間的四則運算分數與分數的加法 如:18/5+

3、16/3=134/15分數與分數的減法 如:1/6-/2=-1/3注:在此舉例分數與分數的加法 、減法計算完成后,按y或n,選擇是否繼續(xù),y則繼續(xù)本類運算,n為返回到主菜單,再次進行選擇4、 選擇分數與整數之間的四則運算分數與整數的乘法 如:1/2*2=1/1分數與整數的加法 如:1/5+6=31/5注:在此舉例分數與整數的乘法 、加法計算完成后,按y或n,選擇是否繼續(xù),y則繼續(xù)本類運算,n為返回到主菜單,再次進行選擇5、 選擇分數的指數運算如:1/3的2次方等于1/9 如:2/3的2次方等于4/9 6、安全退出注:計算完成后,按y或n,選擇是否繼續(xù),y則繼續(xù)本類運算,n為返回到主菜單,再次進

4、行選擇至此,以安全退出。四、調試和測試、調試方法:首先打開microsoft visual c+ 6.0 ,運行程序,出現(xiàn)錯誤修改再運行,直至運行結果0 error ,0 warning結束。接著進入程序界面,看程序能否實現(xiàn)所要求的各項功能,再作下一步的修改。、調試時出現(xiàn)的問題及解決方案:1、當多次運行程序時,屏幕被運行數據占滿,顯得很雜亂。解決方案:引用清屏函數。2、 在進行運算時要實現(xiàn)反復運算得有返回功能,由于我們程序分支,不能正常的調用完畢后進入下一個循環(huán),自動返回。解決方案:直接在switch的cash語句中直接調用所需返回的函數。按y或n,選擇是否繼續(xù),y則繼續(xù)本類運算,n為返回到主

5、菜單,再次進行選擇3、在一次運算完畢后如何不返回繼續(xù)作下一次的相同運算。解決方案:作用循環(huán)語句,結果始終為真,結尾利用if語句控制是否跳入上級菜單或者continue。4、如何在歡迎界面停留時間。解決方案:通過for循環(huán),執(zhí)行無條件的;的語句,通過執(zhí)行次數控制程序在歡迎界面的停留時間。5、還有一些小錯誤,比如未聲明就直接使用變量、未對一些變量初始化、聲明是空值函數卻有返回值、缺少;、使用getch(),system(cls)卻缺少相應的頭文件,出現(xiàn)警告五、分析及結論在做這個課程設計報告之初是仿照以前的計算器,但是,由于程序行數做了要求,而且題目要求不一樣,所以我就在仿照以前的計算器的同時,進一

6、步完善其功能。該程序是我經過多次編寫,修改,在不懂的問題上,與指導朋友劉華和劉洋 一起討論,根據觀察其他程序,通過菜單選擇實現(xiàn)不同功能得到的啟發(fā),將自己所需實現(xiàn)的功能通過文字形式的菜單表現(xiàn)出來。 然后再菜單處進行選擇計算類型,正常完成計算,返回和退出。我最滿意的地方是“清屏”和“在界面上停留的時間”,總之這個程序基本能符合我自己的要求。不足之處:1、 代碼重用;2、 不能熟練的運用類;3、 沒有用到指針和數組,對數組和指針還不能很好的運用。心得體會:通過這次課程設計我對這學期所學的c+語言的理論知識得到鞏固,達到該設計的基本目的,也發(fā)現(xiàn)自己的不足之出,在以后的上機中應更加注意。同時體會到c+語

7、言具有的語句簡潔,使用靈活,執(zhí)行效率高等特點。發(fā)現(xiàn)上機實訓的重要作用,特別是對數組和循環(huán)有了深刻的理解。發(fā)現(xiàn)自己對指針還不能正確使用。通過實際操作,學會 c+語言程序編程的基本步驟、基本方法,開發(fā)了自己的邏輯思維能力,培養(yǎng)了分析問題、解決問題的能力。深刻體會到“沒有做不到的,只有想不到的”,“團結就是力量”,“實踐是檢驗真理的標準”,“不恥下問”的寓意。六、附錄 附錄源代碼:#include #include /數學函數的定義#include /屏幕操作函數#include /庫函數const int n=80000000; using namespace std;int xz;class j

8、sqpublic:jsq()jsq()menu(); /菜單fenshu(); /分數之間的運算js(); /整數與分數運算start(); /開始zs(); /分數的指數運算tc(); /退出fun(int t,int f);/約分函數 private:int a,b,c,d,i,r,t,t1,f,f1,x;char n,q;void cd()/進入界面int i,j;coutendlendlendlendl;cout endl;cout * 歡迎使用分數計算器 *endl; cout endl;coutendlendl;cout |endl;cout |*|endl;cout | 重慶工商

9、大學派斯學院 |endl;cout | 計算機科學系 |endl;cout | 制作人: 10計本2 鄧寅森 |endl;cout | 2011年5月 |endl;cout |*|endl;cout |endlendl;coutendl 正;for(i=0;in;i+);cout在;for(i=0;in;i+);cout進;for(i=0;in;i+);cout入;for(i=0;in;i+);cout系;for(i=0;in;i+);cout統(tǒng);for(i=0;in;i+);cout,;for(i=0;in;i+);cout請;for(i=0;in;i+);cout稍;for(i=0;in;

10、i+);cout等;for(i=0;in;i+);for(j=0;j=6;j+)cout.;for(i=0;in;i+);for(i=0;i8*n;i+);coutendlendl;coutendsendsendsendsendsendsendsendsendsendsendsendsendsendsends;for(j=0;j=50;j+)cout;for(i=0;i=50000000;i+);jsq:menu() / 主菜單 dosystem(cls); /清屏coutendl;cout endl;cout *簡單計算器*endl;cout endlendl; cout 1: 分數之間的運

11、算endlendl;cout 2: 整數與分數運算endlendl;cout 3: 分數的指數運算endlendl;cout 0: 退 出endlendl; coutxz;while(xz3); /循環(huán)結束條件jsq:start()/自定義科學函數jsq js;js.menu();while(xz=1 & xz=3) switch(xz) case 1: js.fenshu();break; case 2: js.js();break; case 3: js.zs();break; coutendlendl; cout 是否繼續(xù)進行運算(yn): ;/提示是否繼續(xù) if(getch()=n)

12、js.menu(); /調用標準函數實現(xiàn)返回 else continue; /重復上一次法則運算 if(xz=0)js.tc();jsq:fun(int t=0,int f=0)/約分int r,t1=t,f1=f;while(r=t%f)!=0) t=f; f=r;t1=t1/f;f1=f1/f;coutendl 計算結果為:t1/f1endl;jsq:tc()/退出coutendlendl 正 在 安 全 退 出 請稍候.;for(;i30000;i+) ; /*控制界面停留時間*/system(cls);/清屏coutendlendlendl endl; cout 謝 謝 使 用 end

13、l; cout bay-bay endl; cout endl;for(;i500000000;i+) ; /*控制界面停留時間*/system(cls);/清屏jsq:fenshu()/自定義分數函數jsq js;system(cls);coutendl;cout=endl;cout歡迎使用分數之間的計算endl;cout=endlendl;coutanb;coutendl 請選擇計算方式endlq;coutendlcnd;if(b=0 | d=0) coutendl 輸入錯誤或分數無意義endl;fenshu();switch(q)case+:t1=t=a*d+b*c;/分子f1=f=b*

14、d;/分母js.fun(t1,f1);break;case-:t1=t=a*d-b*c;f1=f=b*d;js.fun(t1,f1);break;case*:t1=t=a*c;f1=f=b*d;js.fun(t1,f1);break;case/:t1=t=a*d;f1=f=b*c;js.fun(t1,f1);break;jsq:js()/自定義分數函數【分數+整數】system(cls);/清屏coutendl; cout =endl;cout 歡迎使用分數與整數運算endl;cout =endlendl;coutanb;coutendl 請選擇計算方式endlq;coutendlx;if(b=0) coutendl 輸入錯誤或分數無意義endl;fenshu();switch(q)case+:t1=t=x*b+a;f1=f=b;fun(t1,f1);break;case-:t1=t=a-b*x;f1=f=b;fun(t1,f1);break;case*:t1=t=a*x;f1=f=b;fun(t1,f1);break;case/:t1=t

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論